在UITabBarController中同步选项卡之间的状态

时间:2018-04-03 09:07:46

标签: ios architecture uitabbarcontroller observer-pattern notificationcenter

应用有一组配置了UITabBarController的屏幕(标签) 每个标签都有自己的UINavigationController个实例 每个UINavigationBar都有一个带下拉列表的按钮。选择下拉列表中的行应触发某些contentReload中的UIViewController事件并更新UINavigationBar

同步应用的多个标签的最佳方法是什么? 我有多种选择:

  1. 观察者模式:创建一个State类来存储共享 state(当前选择了哪个项目)并将其传播到所有项目 观察员

  2. 使用NotificationCenter并订阅所有相关对象以进行更改。

  3. 在所有控制器之间共享State的实例,使用KVO监控更改。

  4. 对一种方法是否优先于另一种方法?或者是否有处理此类应用状态转换的标准模式?

    UI示例,每个控制器都可以访问下拉列表: enter image description here

0 个答案:

没有答案