zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

iOS NSNotification传递带参数的通知

ios 参数 传递 通知
2023-09-11 14:17:57 时间

普通的通知使用
注册观察者

[[NSNotificationCenter defaultCenter] 
addObserver:self selector:@selector(getNotificationAction) name:@"ThisIsANoticafication" object:nil];

发送通知

[[NSNotificationCenter defaultCenter] 
postNotificationName:@"ThisIsANoticafication" object:nil];

传递带参数的通知
在发送通知时设置object参数

[[NSNotificationCenter defaultCenter] 
postNotificationName:@"ThisIsANoticafication" object:@{@"parameter1":@"1",@"parameter2":@"2"}];

这里传入了一个字典,那么如何在接收通知的时候得到这个字典呢

[[NSNotificationCenter defaultCenter] 
addObserver:self selector:@selector(getNotificationAction:) name:@"ThisIsANoticafication" object:nil];
- (void)getNotificationAction:(NSNotification *)notification{
    NSDictionary * infoDic = [notification object];
    // 这样就得到了我们在发送通知时候传入的字典了
}

当然传入的参数可以是其他类型。