我需要启用我的屏幕以响应用户的触摸,但只有在通过MBProgressHUD出现的消息提示它们之后。我意识到我需要实现
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
方法,但正如我所说,我只有在提示用户提示时才需要这样做,而不是之前。可以这样做,如果是这样,怎么办?
答案 0 :(得分:1)
只需使用名为userHasRespondedToMessage的布尔标志即可。将其设置为NO,直到用户响应该消息。然后,在你的touches方法中,如果布尔值为no,则返回而不是处理触摸。或者您想要启用或禁用tocuhes的任何其他方式。
答案 1 :(得分:0)
这取决于你的情况。但是,这是处理触摸的一般方法。当您需要在视图中启用/禁用触摸时,您需要启用/禁用它:
BOOL wantWhatTouch = NO.//or yes depend on you
[self.view setUserInteractionEnabled:wantWhatTouch];
以上代码将禁用您的视图触摸。
所以,如果现在你想再次启用触控功能。只是在您删除/禁用提示消息时,只需再次启用它...说,您使用按钮删除/隐藏您的警报,然后就这样做:
[self.view setUserInteractionEnabled:YES];
所以,你会发现你的触摸再次起作用。