[iOS NSNotifaction通知多次调用] postNotification多次调用问题

news/2024/7/20 22:31:40 标签: ios, 通知乱套, 通知中心, 执行两次, 执行三次

背景情况
* 在A控制器ViewController push 到 B控制器中
* B控制器的 ViewDidLoad 方法中 添加了一个通知 并实现了这个通知的方法

问题出现
在第一进入 B 中, 通知方法 被调用一次
在push返回后, 第二次进入 B 中, 通知方法 被调用二次,
在push返回后, 第三次进入 B 中, 通知方法 被调用三次,
从而导致问题出现
解决办法
1.在 通知的方法被调用以后 ,在后面添加

[[NSNotificationCenter defaultCenter] removeObserver:<#(nonnull id)#> name:<#(nullable NSString *)#> object:<#(nullable id)#>];

然而却并没有效果

2.在 控制器已经消失时 添加删除通知中心的方法

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

http://www.niftyadmin.cn/n/1557655.html

相关文章

传统主从配置

传统主从配置 MySQL通过二进制文件写入和恢复数据 主服务器一定要打开二进制日志 必须两台服务器&#xff08;或者是多个实例&#xff09; 从服务器需要一次数据初始化 如果主从服务器都是新搭建的话&#xff0c;可以不做初始化 如果主服务器已经运行了很长时间了&#xff0c;可…

Vue封装一个自己的组件(Alert信息提示框)

前言&#xff1a; 在项目中经常遇到提示信息组件&#xff0c;我们一般会用ui库来做。但是当ui库无法满足自己的需求&#xff08;比如自定样式&#xff0c;ui库的样式很难改变&#xff09;。下面就是简单封装一个自己的Alert信息提示框。 一、实现思路 1.我们要做得是alert组…

Proxy 与Object.defineProperty介绍与对比(vue源码运用)

前言&#xff1a; 最近在看一些vue的源码vue实现响应式的实现方式就用到了Object.defineProperty和Proxy 。 一、Proxy 与Object.defineProperty介绍与对比 我觉得这篇文章讲的就很好 Proxy 与Object.defineProperty介绍与对比 二、vue里的运用 vue1/vue2实现响应式都是Ob…

[iOS 相关] 开发中用到的一些网站

[iOS 相关] 开发中用到的一些网站 留给自己便捷翻阅 *友盟 *腾讯开放平台 *微信开放平台 *html在线检测工具 *base64在线编解码 *蒲公英 *Apple官网 *苹果iCloud *GitHub *CSDN *cocoachina

CentOS 7 修改日志时间戳格式

默认的时间戳格式是Jul 14 13:30:01 localhost systemd: Starting Session 38 of user root.看着不是很方便&#xff0c;现修改为以下格式2018-07-14 13:32:57 desktop0 systemd: Starting System Logging Service...修改 /etc/rsyslog.conf # Use default timestamp format #$…

vue3的新特性及api

前言&#xff1a; 最近在学vue源码&#xff0c;vue已经到vue3(beat)版本&#xff08;目前官方建议不在生产环境使用&#xff09;&#xff0c;说实话vue2和vue3的有了质的飞跃&#xff08;主要是性能上&#xff09;。想对vue3有更好的了解我强烈推荐看看尤大的介绍视频&#xf…

[iOS 发布] in-house 发布

企业版证书&#xff08;$299&#xff09;In-House方式发布指南 转载!!!!!