当用户解锁手机或回到应用程序时,是否有任何在视图或控制器上调用的功能?注册应用程序到达前台的通知对我来说似乎很苛刻,所以我希望调用viewDidLoad
或viewDidAppear
这样的内容,但它们不是。
我的视图有不同的状态,在其中一个状态下它运行一个计时器(UI指示适当)。在计时器被触发后,视图会对服务器进行一些调用并更新UI。似乎解锁之后NSTimer正在从手机锁定的地方继续,但是我想刷新它的状态,检查服务器剩余的超时并从正确的值运行计时器(或者如果超时已经显示“正常”UI过度)。我只是找不到系统回到应用程序时为我调用的回调。
答案 0 :(得分:3)
正确的解决方案是让视图控制器向NSNotificationCenter
注册适当的应用生命周期通知,例如UIApplicationDidBecomeActiveNotification
或UIApplicationWillEnterForegroundNotification
。
请注意,这些是应用事件,而非查看事件,这就是UIViewController
或UIView
中没有标准方法的原因。