1.场景就是在一个控制器中的view中有一个状态(未录入),点击未录入就会跳到签名界面,签名完成后,会dismiss关闭,这时候就要修改view的状态(已录入),view是自定义的,所以我想通知是最方便的,初始化的时候我创建控制器,但是view关掉,却不走移除控制器的方法。搜索一番资料得到下面两个方法。
//这个方法相当于vc中的viewDidLoad
- (void)didMoveToWindow {
if (self.window) {
//创建通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tongzhi:) name:@"signature" object:nil];
}
}
//从当前window删除 相当于-viewDidUnload
- (void)willMoveToWindow:(UIWindow *)newWindow {
if (newWindow == nil) {
//移除通知
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"tongzhi" object:nil];
}
}
我把通知补充完整
//发送通知
[[NSNotificationCenter defaultCenter] postNotificationName:@"signature" object:dic];
//接受通知内容
-(void)tongzhi:(NSNotification *)notification{
NSDictionary *dic = notification.object;
[_signBtn setTitle:dic[@"title"] forState:(UIControlStateNormal) ];
}