iPhone软件开发的时候会遇到这种情况:打开APP后会在后台运行某个方法,例如下载文件,下载完成后可能需要调用某个方法来刷新界面,这时候可能没法在下载的函数中回调。NSNotificationCenter(通知)是一个很好的选择。
通知使用起来灰常的简单:
1、定义通知:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(callBack)
name: @"back"
object: nil];
2、定义通知中使用的方法:
- (void)callBack{
NSLog(@"i am back.");
}
3、调用通知:
- (void)getIT{
NSLog(@"get it.");
//发出通知
[[NSNotificationCenter defaultCenter] postNotificationName:@"back" object:self];
}
在调用通知的时候程序会在整个项目中寻找此通知的名称,找到后发出请求,因此通知的名称需要在整个项目中唯一。
点击此处下载示例。
【原文:http://www.wuleilei.com/blog/262】