Iphone 通过视图问题进行用户交互

Iphone 通过视图问题进行用户交互,iphone,objective-c,Iphone,Objective C,请帮助我关闭用户交互。 我有一个自定义视图,它在视图层次结构的顶层显示几秒钟。视图下有几个按钮。问题在于,当用户点击视图时,按钮会捕捉到触摸事件。我已将myCustomView.userInteractionEnabled设置为否;什么也没发生。按钮同样通过视图捕捉事件。如何创建一个不允许通过它截取触摸的视图?您只需在按钮的公共超视图上禁用用户交互: someButton.superview.userInteractionEnabled = NO; 当某些覆盖UI位于顶部时,另一种禁用UI的方

请帮助我关闭用户交互。
我有一个自定义视图,它在视图层次结构的顶层显示几秒钟。视图下有几个按钮。问题在于,当用户点击视图时,按钮会捕捉到触摸事件。我已将myCustomView.userInteractionEnabled设置为否;什么也没发生。按钮同样通过视图捕捉事件。如何创建一个不允许通过它截取触摸的视图?

您只需在按钮的公共超视图上禁用用户交互:

someButton.superview.userInteractionEnabled = NO;

当某些覆盖UI位于顶部时,另一种禁用UI的方法是将覆盖放在其自己的窗口中,而不是放在现有视图的顶部。

您可以在按钮的公共超级视图上禁用用户交互:

someButton.superview.userInteractionEnabled = NO;
另一种在某些覆盖UI位于顶部时禁用UI的方法是将覆盖放在其自己的窗口中,而不是放在现有视图的顶部。

如果myCustomView位于视图层次结构的顶层,我想您正在尝试实现类似覆盖视图的功能,该视图半透明地覆盖其他视图。在这种情况下,在此视图上设置userInteractionEnabled=NO将导致触摸事件转发到下面的视图

正确的方法是在自定义视图上设置userInteractionEnabled=YES,然后创建一个透明按钮,将触摸重新路由到某个动作,或者忽略它。

如果myCustomView位于视图层次结构的顶层,我想您正试图实现类似覆盖视图的功能,该功能将半透明地覆盖其他视图。在这种情况下,在此视图上设置userInteractionEnabled=NO将导致触摸事件转发到下面的视图

正确的方法是在自定义视图上设置userInteractionEnabled=YES,然后创建一个透明按钮将触摸重新路由到某个动作,或者忽略它。

使用:

[[UIApplication sharedApplication]beginIgnoringInteractionEvents]

用于忽略用户事件。几秒钟后,您的视图消失,您可以使用:

[[UIApplication sharedApplication]endIgnoringInteractionEvents]

这样您就可以解决您的问题。

使用:

[[UIApplication sharedApplication]beginIgnoringInteractionEvents]

用于忽略用户事件。几秒钟后,您的视图消失,您可以使用:

[[UIApplication sharedApplication]endIgnoringInteractionEvents]

这样你就能解决你的问题