单知识点运用---使用通知--进行关于不同视图中数值传递

对事件进行处理有三种方法:

1:忘记了

2:代理

3:通知

使用案例就是76天-项目实战--宾果社区 中的applegate.m下的接收消息方法中接收到的消息内容传递到chatviewcontroller.m中。

applegate.m中

//接收消息

- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message

{

    //获得发送信息的用户名

    XMPPJID * jid = [message from];


    //获得发送过来的body

    NSString * body = [[message elementForName:@"body"] stringValue];

    

    //合并发送人和发送内容

    body = [NSString stringWithFormat:@"%@: %@", [jid user], body];

    //创建一个通知

    NSNotification * note = [[NSNotification alloc]initWithName:@"COMEMSG" object:body userInfo:nil];

    

    //发通知 往通知中心投递通知

    [[NSNotificationCenter defaultCenter]postNotification:note];

    

}


chatviewcontroller.m中


这里涉及到两个方法:

一个是在- (void)viewDidLoad 中:需要注册通知从而得到通知池中已经放入的通知,具体如下:


- (void)viewDidLoad {

    [super viewDidLoad];

    

    //注册通知,这样就可以得到通知池中已经放入的通知

    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(comeMessage:) name:@"COMEMSG" object:nil];

    }


之后实现通知的方法

//处理得到的通知

-(void)comeMessage:(id)_o

{

    NSLog(@"%@", [_o object]);

}






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值