如何使我的屏幕仅在我的iOS应用程序中提示用户一条消息后才响应UITouch?
我需要使我的屏幕能够响应用户的触摸,但只有在用户通过MBProgressHUD显示的消息提示之后。我意识到我需要实施如何使我的屏幕仅在我的iOS应用程序中提示用户一条消息后才响应UITouch?,ios,uitouch,touchesbegan,uievent,Ios,Uitouch,Touchesbegan,Uievent,我需要使我的屏幕能够响应用户的触摸,但只有在用户通过MBProgressHUD显示的消息提示之后。我意识到我需要实施 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 方法,但正如我所说的,我只需要在用户收到消息提示时才需要这样做,而不是在之前。这可以做到吗?如果可以,怎么做?只需使用一个名为userHasRespondedToMessage的布尔标志。将其设置为“否”,直到用户响应该消息。然后,在您的touch方法
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
方法,但正如我所说的,我只需要在用户收到消息提示时才需要这样做,而不是在之前。这可以做到吗?如果可以,怎么做?只需使用一个名为userHasRespondedToMessage的布尔标志。将其设置为“否”,直到用户响应该消息。然后,在您的touch方法中,如果布尔值为no,则返回,而不是处理touch。或者您希望启用或禁用tocuhes的任何其他方式。这取决于您的情况。但是,这里是处理触摸的一般方法。当您需要在视图中启用/禁用触摸时,您需要按如下方式启用/禁用触摸:
BOOL wantWhatTouch = NO.//or yes depend on you
[self.view setUserInteractionEnabled:wantWhatTouch];
上述代码将禁用触摸您的视图
所以,如果现在您想再次启用触摸。当您删除/禁用提示消息时,只需再次启用它…例如,您使用按钮删除/隐藏警报,然后执行以下操作:
[self.view setUserInteractionEnabled:YES];
因此,您会发现您的触控功能再次发挥作用。感谢您的及时回复。我没想到解决办法会这么简单!嗯,有很多不同的方法可以做到这一点,从简单到复杂。我刚选了一个对你帮助最小的:P