ios – 如何在UIKit中调试谁在吃我的东西?

前端之家收集整理的这篇文章主要介绍了ios – 如何在UIKit中调试谁在吃我的东西?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不知道为什么在我的视图中点击文本字段和按钮不起作用.我检查了所有显而易见的事情,如userInteractionEnabled是否设置为YES,是否安装了手势识别器,以及前景中是否有不可见的视图.

iOS中是否有最佳实践,用于跟踪触摸从首次出现到哪里消费?

更新:

两个答案都是有帮助的.在调查过程中,我了解到,如果子视图超出了其父级限制,即使父级没有剪辑子视图,子视图也不会收到事件.我从文字领域打印出超级视觉链,没有被触动,我看到其中一个视图的高度为0.我把一些限制拉伸出来,我的问题解决了.

解决方法

您可以继承UIWindow并覆盖 – [UIWindow sendEvent] :,然后当它被调用时,使用 – [UIWindow hitTest:withEvent:]来测试哪个视图将接收该事件.

然后,您可以调用 – [UIView recursiveDescription]打印一些调试信息,帮助您了解为什么该视图接收到触摸事件.

记得在完成后调用[super sendEvent:].

猜你在找的iOS相关文章