iOS之NSNotification封装

简介

NSNotification是iOS开发中一种重要的设计模式,它的实质是程序内部提供的一种广播机制。把接受到的消息根据内部消息转发表,将消息转发给需要的对象。 GitHub Demo

特点

 1. 一句话添加;
 2. block方式回调;
 3. 无需考虑内存泄露.

涉及知识点:

使用Notification最重要的就是要注意内存泄露问题, 在此工具中, 无需使用者考虑内存泄露的问题, 工具中的实现思路是:
1.建立NSObject的类别; (因为 NSObject 为顶级父类);

2.为NSObject添加一个数组(`helperObserverInfos`)的私有属性, 用来存储当前类(self)的所有Observer;

3.运用runtime动态关联属性, 将数组与self动态关联, 达到属性的拥有.

4.新建一个释放Observe的方法, 运用runtime, 将新建的方法与系统的dealloc方法内部实现交换, 达到移除Observers的目的.
实现代码:
@interface NSObject (BHNotificationHelper)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值