如何检测通知中心是否已打开
问题描述:
在iOS 10设备上的cocos2dx项目中,如果通知中心被刷下然后向上,则会发生巨大的帧速下降。结果,当动画重新开始时,将其运动依赖于德耳塔t的元素移动到无效位置。它在我看来,操作系统是把应用程序在某种背景模式,但没有调用applicationDidEnterBackground
。 当通知中心被向下/向上滑动时,是否有办法接收事件?如何检测通知中心是否已打开
答
使用
applicationWillResignActive(_:)
当乌尔应用前景留下上面的委托被调用。这是当乌尔应用暂时失去专注如一对接听电话等
您可以使用
applicationWillEnterForeground(_:)
弄清楚当乌尔应用程序重新获得焦点时调用相同的委托。
读:https://developer.apple.com/documentation/uikit/uiapplicationdelegate
由于这些代表被称为在App的UIApplicationDelegate
通常是乌拉圭回合的appDelegate文件,大多数时候,你想获得通知个人ViewControllers这些事件,而不是在AppDelegate中,你可以随时使用NotificationCenter
并添加观察员UIApplicationWillResignActiveNotification
谢谢你的答案。 因此,在iOS10上刷新通知中心时,肯定会调用applicationWillResignActive? – Vahagn
@vahagn:从逻辑上说,我认为iOS 10中没有任何特别的变化。我已经使用这些来处理接收语音通话场景的设备。所以应该使用这个以及 –
@vahagn:阅读此https://stackoverflow.com/questions/9060066/sleep-mode-vs-notification-center-open这明确提到applicationWillResignActive被通知中心下拉 –