如何检查当前是否正在显示一个UIViewController
?
我的UIViewController
正在监听NSNotifications
,即使它们没有被显示(即不可见)。因此,我可以有10个在后台的UIViewController
从NSNotificationCenter
中观察NSNotifications
。当一个NSNotification
被发布并被UIViewController
接收时,我想知道它当前是否正在显示。如果没有,我将设置一个布尔值,以便在视图呈现时处理它。如果它正在显示,则会立即执行更多操作,例如更新表格等等...
UINavigationController
类中检查topViewController
。或者,如果您想处理多个控制器,请枚举viewControllers
数组。 - Tomasz DubikNSNotifications
,创建一个名为isVisible
的BOOL
变量,并在调用viewDidAppear
和viewDidDisappear
时设置其值呢?然后在你的viewWillAppear
(或其他地方)中,你只需要检查你的BOOL
变量,就可以减少很多复杂性了。 - DBD