这是一个有效的应用程序结构

时间:2011-01-09 17:34:56

标签: iphone

我的应用程序中有以下结构,这是一种正确/有效的方法吗?

UINavigationController附加到窗口,此导航控制器中的rootcontroller是一个呈现tableview的UIViewController。当用户点击其中一行时,UITabBarController被推入堆栈。

这很有效,但是当我读到这篇文章时,我开始不确定:

  

因为UITabBarController类   继承自UIViewController   类,标签栏控制器有它们的   自己可以访问的视图   视图属性。部署时   标签栏界面,必须安装   此视图作为窗口的根。   与其他视图控制器不同,标签   吧界面永远不应该   安装为另一个视图的孩子   控制器。

2 个答案:

答案 0 :(得分:1)

不建议这样做,但应该打开。可怕的Wordpress应用程序也这样做。这取决于您的应用程序的设计。

我不确定Apple的批准。

答案 1 :(得分:1)

不推荐这样做的原因(因此可能未经批准 - 现在或以后!)是用户混淆的原因。

用户习惯将标签栏视为顶级导航。因此,如果使用表格和导航进行挖掘,然后获取UITabBar,这对导航来说太可怕了,因为用户不知道会发生什么。

此处的解决方案当然取决于用例,是导航栏或工具栏中的“开关”。 UISegmentedControl将是一个自然的选择。