iOS通知观察者的添加和移除
2016-12-12 16:10
417 查看
在使用通知时,我们要注意在什么时候添加通知观察,什么时候移除通知。
有2种方式
一种是在-view didload中注册通知观察者对应的我们需要在在dealloc中移除通知。因为didload只在view controller生成时执行一次,dealloc也是view controller销毁时才执行,这样对应保证我们不会多次注册通知或者多次移除通知。
另一种就是在viewWillAppear 和viewWillDisappear中进行。这个是只要进入界面中就注册通知,只要离开界面就移除对应的通知。
具体需求根据业务来看。
注意:千万不要在viewWillAppear注册了通知确在dealloc移除通知,这样,你多次进入界面就会生成多个通知,确没有销毁,很有可能造成通知执行对应的方法时重复多次执行。
总结:总之我们使用通知时一定要注意注册了通知在不需要时就要移除,不要重复注册也不要多次移除!
有2种方式
一种是在-view didload中注册通知观察者对应的我们需要在在dealloc中移除通知。因为didload只在view controller生成时执行一次,dealloc也是view controller销毁时才执行,这样对应保证我们不会多次注册通知或者多次移除通知。
另一种就是在viewWillAppear 和viewWillDisappear中进行。这个是只要进入界面中就注册通知,只要离开界面就移除对应的通知。
具体需求根据业务来看。
注意:千万不要在viewWillAppear注册了通知确在dealloc移除通知,这样,你多次进入界面就会生成多个通知,确没有销毁,很有可能造成通知执行对应的方法时重复多次执行。
总结:总之我们使用通知时一定要注意注册了通知在不需要时就要移除,不要重复注册也不要多次移除!
相关文章推荐
- iOS中通知的添加和移除
- iOS通知的添加和移除
- 多线程异步编程(2):创建多个线程执行任务,同时更新进度条,使用观察者模式,利用事件通知界面更新。移除对Form的引用,彻底解除界面与逻辑的耦合
- iOS中添加/删除本地通知(闹钟)的方法
- iOS 观察者模式(KVC&KVO、通知)
- iOS尽量不要在viewWillDisappear:方法中移除通知
- 【iOS-Cocos2d游戏开发之十六】添加本地通知(UILocalNotification)以及添加系统组件滚动视图(UIScrollView)!【2011年11月15日更新】
- ios开发中的基本设计模式(代理,观察者,MVC,单例,策略,工厂,MVVM,原型,Target-Action,通知(notification)机制)
- IOS基础之——添加本地通知(UILocalNotification)
- iOSKVC KVO 添加观察者 --销毁的时候要删除观察者
- iOS 中的观察者模式, KVO, 通知
- [IOS 推送消息] 将旧的推送通知从通知中心移除掉
- ios-day08-02(ios的通知机制:通知的发布、监听、移除,一些常见的系统通知、键盘状态的通知、通知和代理的异同)
- ios 添加本地通知
- IOS中使用本地通知为你的APP添加提示用户功能
- ios 把已经点击过的UILocalNotification 从系统的通知中心现实中移除
- 【iOS-Cocos2d游戏开发之十六】添加本地通知(UILocalNotification)以及添加系统组件滚动视图(UIScrollView)!【2011年11月15日更新】
- IOS观察者模式与通知中心
- iOS 通知观察者的被调函数不一定运行在主线程
- iOS添加、移除、交换子视图