Objective c iOS-在另一个childViewController中更改属性值时在一个childViewController中调用方法
我有两个同一父对象的ChildViewController,比如Objective c iOS-在另一个childViewController中更改属性值时在一个childViewController中调用方法,objective-c,uiviewcontroller,parent-child,retain-cycle,Objective C,Uiviewcontroller,Parent Child,Retain Cycle,我有两个同一父对象的ChildViewController,比如methodChild和propertyChild,希望每次在propertyChild的一个属性中设置新值时调用methodChild中的方法。做这件事的好方法是什么 我想到的一个解决方案是: 在属性设置器中,找到另一个子项(可能通过parentViewController方法和ChildViewController数组)并要求它执行该方法 我对这类事情的主要担忧是意外地创建了一个保留周期或某种内存泄漏,所以任何关于这方面的建
methodChild
和propertyChild
,希望每次在propertyChild
的一个属性中设置新值时调用methodChild
中的方法。做这件事的好方法是什么
我想到的一个解决方案是:
- 在属性设置器中,找到另一个子项(可能通过parentViewController方法和ChildViewController数组)并要求它执行该方法
我对这类事情的主要担忧是意外地创建了一个保留周期或某种内存泄漏,所以任何关于这方面的建议都是非常好的。谢谢你的阅读 父级可以保存引用并跟踪更改的数据。它可以简单地调用其子级的公开更新方法 子控制器应使用委托协议通知父控制器更改。委托是弱的引用,其形式为
id
。这是为了避免您担心的保留周期问题