iOS 通知是经常用到的一个重要的知识点,总结记录一下。
1、向通知中心注册通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(TFChangedValue:) name:@"hello" object:nil];
2、发送通知
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { [[NSNotificationCenter defaultCenter] postNotificationName:@"hello" object:string]; return YES; }
3、接收通知
TFChangedValue: 是响应接收通知的方法,在收到通知后会调用此方法。name是这个通知的名字。
- (void)TFChangedValue:(NSNotification*)notif
{
NSLog(@"textField has changed, now the textField.text is %@",notif.object);
}
4、销毁通知
在需要销毁的时候,可以根据通知的名字remove掉
-(void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self name:@"hello" object:nil]; }
为了方便,我就只在一个页面的textfield中改变的时候把改变的值发了一个通知,在接收到通知后,把值打印出来,输入了一个nba,结果如下: