背景
我有一个定制的UIWindow实现,它在sendEvent方法中发布通知。然后,我有一个自定义视图,一旦添加到窗口层次结构中,就会在上面提到的通知发布后立即从superview中删除它自己(即,在这个视图中的任何地方进行点击,或者不点击该视图)。最后,我有一个按钮,它使这个自定义视图被添加到视图层次结构中。现在的问题是,当我点击此按钮时,视图将被添加到视图层次结构中,但是,在添加自定义视图之后,由该按钮引发的事件将到达我的自定义UIWindow sendEvent方法,从而导致在添加自定义视图之后立即删除该自定义视图。
问题
我想以某种方式访问当前活动的任何UIEvent。这是可能的吗?如果有,那怎么做?
发布于 2015-05-16 00:50:02
我通过侦听通知来解决这个问题,以便跟踪最近的UIEvent (我在userInfo中提供了UIEvent )。然后,当再次收到通知时,我确保它与出现自定义视图之前发生的事件不同(如果是,则跳过删除自定义视图)。
虽然这是对我问题的回答,但@matt在回答以下问题时提出的解决底层问题的方法却要好得多:How can I know when any of the objects on screen were tapped?
https://stackoverflow.com/questions/30270275
复制相似问题