美文网首页iOS经验总结
iOS 通知(NSNotificationCenter)执行多次

iOS 通知(NSNotificationCenter)执行多次

作者: CoderZb | 来源:发表于2018-12-01 20:24 被阅读13次

问题描述:在我要提现界面,输入完支付密码支付成功pop到上个界面,然后再次push到我要提现界面,又进行了一次支付操作的时候,发现会执行两次相同的通知。
原因分析:第一次:输入完之后密码之后发出通知给我要提现控制器,我要提现控制器监听到通知后执行相应操作,然后pop到上个界面,此时并没有做移除通知的操作。第二次:重复第一次,由于第一次的通知还没有移除,所以会监听到两个相同的通知。

image.png

解决办法:在viewWillDisappear:方法中移除通知

-(void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}

总结:要养成一个通知及时移除的好习惯

结合我的这篇文章看看-NSNotificationCenter用完之后不移除的后果

相关文章

网友评论

    本文标题:iOS 通知(NSNotificationCenter)执行多次

    本文链接:https://www.haomeiwen.com/subject/jqgrcqtx.html