NSNotification属于单例模式的一种
什么是单例模式:程序在编译时会被实例化一次,提供一个类方法全局调用,会放在内存中一直占有内存,当APP退出时由系统释放内存
添加通知,发送通知,移除通知
1、发送通知 [[NSNotificationCenterdefaultCenter] postNotificationName:@"test0"object:_obj0 userInfo:@{@"key":@"_obj0"}];
2、添加通知 [[NSNotificationCenterdefaultCenter] addObserver:selfselector:@selector(respondsToNotification:) name:@"test0"object:_obj0];
3、移除通知
//移除该响应者的全部通知[[NSNotificationCenterdefaultCenter] removeObserver:self];//移除该响应者 name==@"test0" 的全部通知[[NSNotificationCenterdefaultCenter] removeObserver:selfname:@"test0"object:nil];//移除该响应者 name==@"test0" 且 object==_obj0 的全部通知[[NSNotificationCenterdefaultCenter] removeObserver:selfname:@"test0"object:_obj0];
关于object参数理解,当添加通知时指定了object,则只会接收到发送通知带有object的,若发送通知时添加了object,添加通知时object参数为nil,响应者也能收到通知
网友评论