我有一个简单的问题,
我有一个包含多个子视图的视图。
在我看来,我已经开始接触......
有没有办法从触摸开始检索子视图而不必从触摸中检测到位置,然后有一个很大的if else to c哪个子视图在该特定区域。
感谢。
答案 0 :(得分:0)
我的解决方案是从超级视图计算触摸位置。子类查看子视图并仅获取触摸位置形式,并将该点转换为超视图。
答案 1 :(得分:0)
您需要的方法是UIView实例方法-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
。这将返回包含point
的最低级别子视图。
所以你得到了你的触摸点,将它传递给你最大的容器UIView的方法,并找回触及最前面的子视图的句柄。容易腻。