我的应用程序中有以下结构,这是一种正确/有效的方法吗?
UINavigationController附加到窗口,此导航控制器中的rootcontroller是一个呈现tableview的UIViewController。当用户点击其中一行时,UITabBarController被推入堆栈。
这很有效,但是当我读到这篇文章时,我开始不确定:
因为UITabBarController类 继承自UIViewController 类,标签栏控制器有它们的 自己可以访问的视图 视图属性。部署时 标签栏界面,必须安装 此视图作为窗口的根。 与其他视图控制器不同,标签 吧界面永远不应该 安装为另一个视图的孩子 控制器。
答案 0 :(得分:1)
不建议这样做,但应该打开。可怕的Wordpress应用程序也这样做。这取决于您的应用程序的设计。
我不确定Apple的批准。
答案 1 :(得分:1)
不推荐这样做的原因(因此可能未经批准 - 现在或以后!)是用户混淆的原因。
用户习惯将标签栏视为顶级导航。因此,如果使用表格和导航进行挖掘,然后获取UITabBar,这对导航来说太可怕了,因为用户不知道会发生什么。
此处的解决方案当然取决于用例,是导航栏或工具栏中的“开关”。 UISegmentedControl将是一个自然的选择。