如何延迟发布NSNotification
。
我想到的一个解决方案:- 在 performSelectorAfterDelay
方法中发布通知。有没有更好的解决方案。
是NSNotificationQueue可以帮助我实现这一目标吗?
最佳答案
利用 GCD 的 dispatch_after()
方法。在 Objective-C 中,这看起来像:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[[NSNotificationCenter defaultCenter] postNotification:someNotification];
});
更新:Swift 3
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + .seconds(5)) {
NotificationCenter.default.post(someNotification)
}
关于ios - NSNotification 延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35474589/