在我的第一个“真正的”iOS 应用程序中,我想推送一个选项 View 并在任何选项发生更改时向主 Controller 发出信号。主 Controller 创建一个选项对象并将其传递给选项 View Controller ,它可能会更改其属性;问题是如何提醒主 Controller 发生变化。我可以想出几种方法来做到这一点,但这似乎是一件很常见的事情,必须有一个标准的设计模式,但我一直没能找到它。推荐?
最佳答案
在其他 View 中处理更改、操作或用户交互是 delegates 的基本用例.最佳实践是让第一个 View Controller 成为选项 Controller 的委托(delegate),然后当用户选择其中一个选项时,它会调用其委托(delegate)的某些方法来通知它最终的选择。为了响应委托(delegate)调用,您可以重新加载 TableView 、禁用/启用按钮或您需要执行的任何其他更新。
在 View 之间保持值/状态同步的其他选项是:
- > Core Data - 最适合用于数据
- > Key-Value Observation - 最适合用于数据
NSNotification
通过NSNotificationCenter
发送- 最适合用于行动
关于ios - iOS 中的信号选项发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16670271/