ios block 导致的循环引用
2015-12-07 14:25
453 查看
[[NSNotificationCenter defaultCenter] addObserverForName:@"UIWindowDidRotateNotification" object:self queue:nil usingBlock:^(NSNotification *note) { if ([note.userInfo[@"UIWindowOldOrientationUserInfoKey"] intValue] >= 3) { self.navigationController.navigationBar.frame = (CGRect){0, 0, self.view.frame.size.width, 64}; } }];
今天在controller里加了上面的代码,发现不能controller不能释放了,不是因为没有调用
[[NSNotificationCenter defaultCenter] removeObserver:self];
即使调用了上面的代码也没用!
原来又是忘记在block中要用 weak self,不能用self,这里的问题需要仔细想一下再记下来。。。
相关文章推荐
- iOS-运行时机制
- iOS项目创建头文件的设置方法
- iOS---runtime介绍
- iOS开发 - Bitcode适配指南
- iOS 官方文档NSCalendar
- iOS开发之block(一)
- IOS 在viewController上添加视频
- iOS开发者们如何获取设备型号
- iOS自定义tabbar和仿安卓滑动效果可添加功能按钮
- iOS开发-ios7下拉刷新,上提加载快速集成
- 17个提升iOS开发效率的必用工具
- iOS相机选择器
- 151207 iOS之 nil null 和nsnull
- iOS---后台运行机制详解
- iOS项目的完整重命名方法图文教程
- ios8 点击设置->隐私->定位服务手机闪退
- iOS---搜索功能
- iOS---iOS9搜索功能
- iOS中 蓝牙2.0详解/ios蓝牙设备详解 韩俊强的博客
- iOS中 蓝牙2.0详解/ios蓝牙设备详解 韩俊强的博客