通知中心也是ios进行通信的一种机制。它可以实现一对多的消息通知。当通知发出后系统会根据它唯一的key来添加观察者并执行方法。
使用通知
一、发送通知
通知的唯一标识name
NSString * const kMPRootMusicViewControllerDeleteMusicNSNotification = @"kMPRootMusicViewControllerDeleteMusicNSNotification";
一般命名方式为发出通知的类名+做了什么事情+通知;
[[NSNotificationCenter defaultCenter] postNotificationName:kMPRootMusicViewControllerDeleteMusicNSNotification object:_deletaMusicArray];
_deletaMusicArray是在发送通知时想要传出的值;
二、添加观察者
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(musicDidDelete:)
name:kMPRootMusicViewControllerDeleteMusicNSNotification
object:nil];
注意如果这个通知是有参数传过来拿么函数名后面一定要跟着冒号:!!!!
addObserver: 观察者
selector:收到通知执行函数
name:这个通知的唯一标示
三、执行函数方法
- (void)musicDidDelete:(NSNotification *)notification
{
//获取传过来的参数
notification.object;
[self reloadData];
}
四、删除通知
- (void)dealloc
{
//切记删除通知如果不删除会有大麻烦
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
当你将信心放在自己身上时,你将永远充满力量。
网友评论