如题,我希望UIViewController监听一些来自另外一个UIViewController的属性变化。
比如VC1有一个餐券的列表,用户在VC2删除了一张餐券,VC1和VC2本身是没有关系的。我希望VC1能够在VC2删除餐券的时候,将自己的餐券列表进行一次刷新。现在问题来了,我通过Storyboard创建的VC1,在VC1的viewDidLoad里面addObserver,但是用户如果多次进入VC1,VC1的viewDidLoad会多次执行,也就是说会addObserver会执行多次,这时VC1会在收到消息时进行多次的刷新。那么我在什么时机去removeOberser呢?
其中在viewWillDisappear中remove是不行的,因为这样VC1就不是监听者了,无法进行响应
首先VC1和VC2没有什么关系,你是怎么监听的??
移除监听者不是都在监听的页面dealloc的时候吗。
其次:这种事情,我都是通知做的。删除成功就发个通知,通知需要更改的页面重新请求数据(也就是刷新)。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。