本文通过网上下载的 JRNotification Created by jerehedu的代码理解,以及自己的实际运用而写,希望对您有所启发。
本demo目的是创建三个VC然后在第三页点击选择不同的颜色按钮时候,三个页面的背景颜色都相应的转换成按钮对应的颜色。
这个是本工程的文件列表
总结要点:1.通知中心就是一种机制,在某一个VC中向外发送一条通知,这条通知带一个名字作为唯一标识,例如:
[[NSNotificationCenter defaultCenter] postNotificationName:@"color" object:[colorArray objectAtIndex:sender.tag-1001]];
//这条通知就叫做color
//同时object:后面就是通知将要传递出去的东西,可以是各种类型的。
2.接下来就是谁来接收,凭什么接收, 例:
//注册接收
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changeBgColor:) name:@"color" object:nil];
//那页想用,那页就把这段代码打上,name:写上color确保接收和传出都是同一个唯一标识,然后需要写一个changeBgColor的函数调用;
- (void)changeBgColor:(NSNotification * )notification
{
self.view.backgroundColor=notification.object;//这样就能把object传过来了,然后可以进行下一步的继续操作。
}
谢谢您的观看。