我有两种观点,一个还是一个孩子。
View1 ---> View2(View1将View2作为子级)

如何编码此功能?
1)如果用户在View2上轻拍-则点击了正确的消息:发送到View2;
2)如果用户只是将手指移到View1(包括View2)上,则会将事件传递给View1,以便它可以处理touchesBegan:等。

因此,我要编写的代码是,如果触摸很短,则使一个功能“ [View2轻按:...]”,如果触摸正在移动,则使另一功能([View1 touchesBegan:..]等)。

就我而言,如果我将手指移到View2上-它永远不会将事件传递给View1。

P.s.我没有重写hitTest或其他任何东西。

最佳答案

Gesture recognizers非常优雅地处理这种逻辑。在view2上放置UITapGestureRecognizer,然后在view1上执行任何操作(例如,UIPanGestureRecognizer)。这样可以解决您需要的所有“什么视图可以识别哪些手势”逻辑。

关于ios - UIView应该捕获点击事件,但继续传递移动事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13684386/

10-09 07:15