1
禁用用戶交互雖然我的應用程序運行一個簡單的動畫,我不希望用戶能夠點擊任何地方。在我的視圖控制器我可以使用用的UIBarButtonItem
self.view.userInteractionEnabled = NO;
阻止大多數的互動,但它並不妨礙在工具欄/導航欄的按鈕從觸發事件。
我不能只是禁用按鈕,因爲這有一個分散注意力的視覺衝擊力(按鈕變灰)。
如何可能我簡要暫停與所有控件的互動?
禁用用戶交互雖然我的應用程序運行一個簡單的動畫,我不希望用戶能夠點擊任何地方。在我的視圖控制器我可以使用用的UIBarButtonItem
self.view.userInteractionEnabled = NO;
阻止大多數的互動,但它並不妨礙在工具欄/導航欄的按鈕從觸發事件。
我不能只是禁用按鈕,因爲這有一個分散注意力的視覺衝擊力(按鈕變灰)。
如何可能我簡要暫停與所有控件的互動?
您的UIApplication
實例使用-beginIgnoringInteractionEvents
和-endIgnoringInteractionEvents
。這正是像UINavigationController
這樣的類在將動畫推送到新的視圖控制器時執行的操作。要獲得您的特定實例UIApplication
,請使用UIApplication
類中的+sharedApplication
方法。考慮這個例子。
[[UIApplication sharedApplication] beginIgnoringInteractionEvents];
[[UIApplication sharedApplication] endIgnoringInteractionEvents];