iOS_NSNotificationCenter(通知中心简单建立)

通知中心 (先注册观察者,后发送通知)

- (IBAction)buttonDidClicked:(UIButton *)sender {

    SecondViewController *secondVC = [[SecondViewController alloc] init];
    [self.navigationController pushViewController:secondVC animated:YES];

    // 通知中心 *注册* 观察者
    // 监听 123 频道消息
    // 主要作用不是传值,而是实现相隔较远的页面之间进行交互
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveNotification:) name:@"123" object:nil];

}

接收通知中心发送的通知

#pragma mark - 接收通知中心发送的通知
- (void)didReceiveNotification:(NSNotification *)sender
{
    self.firstLabel.text = sender.userInfo[@"text"];
    NSLog(@"welcome back!");
}

移除通知中心的观察者(首选pop)

#pragma mark - 移除通知中心的观察者(首选pop)
// 如果内存控制好的话,也可以在dealloc里面写,ARC下也可以写dealloc
- (void)dealloc
{
    // 移除所有的观察者
    [[NSNotificationCenter defaultCenter] removeObserver:self];

    // 移除指定的观察者
    [[NSNotificationCenter defaultCenter] removeObserver:self name:@"123" object:nil];
}

发送通知

- (IBAction)backButtonDidClicked:(UIButton *)sender {

    // 发送通知
    [[NSNotificationCenter defaultCenter] postNotificationName:@"123" object:nil userInfo:@{@"text":self.textField.text}];

    [self.navigationController popViewControllerAnimated:YES];
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值