【问题标题】:Is this a valid structure of an app这是应用程序的有效结构吗
【发布时间】:2011-01-09 17:34:55
【问题描述】:

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

UINavigationController 附加到窗口上,这个navigationcontroller 中的rootcontroller 是一个呈现tableview 的UIViewController。当用户点击其中一行时,UITabBarController 被压入堆栈。

这行得通,但是当我读到这个时我开始不确定:

因为 UITabBarController 类 继承自 UIViewController 类,标签栏控制器有他们的 可通过以下方式访问的自己的视图 视图属性。当部署一个 标签栏界面,必须安装 这个视图作为你的窗口的根。 与其他视图控制器不同,选项卡 酒吧界面永远不应该 作为另一个视图的子项安装 控制器。

【问题讨论】:

    标签: iphone


    【解决方案1】:

    不建议这样做,但应该没问题。令人敬畏的 Wordpress 应用程序也可以做到这一点。这取决于您应用的设计。

    我对 Apple 的批准不放心。

    【讨论】:

    • 只有当用户点击其中一行时才呈现 UITabBar 的正确方法是什么?
    • 一点也不。标签栏应始终显示或从不显示。另请阅读 iOS HIG,其中提到了这一点。
    • 我不明白为什么这是“不”推荐的,但是你认为提交时会被批准吗?
    • @Andreas:它可能会,因为适用于 iOS 的 WordPress 已获批准并在 App Store 上。
    • @BoltClock 不幸的是:(
    【解决方案2】:

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

    用户习惯于将标签栏视为顶级导航。因此,如果使用表格和导航进行挖掘,然后获得一个 UITabBar,这对于导航来说是很糟糕的,因为用户不知道会发生什么。

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

    【讨论】:

      猜你喜欢
      • 2017-04-01
      • 2019-06-19
      • 1970-01-01
      • 2012-02-10
      • 1970-01-01
      • 2018-06-08
      • 2011-09-26
      • 2012-09-22
      • 1970-01-01
      相关资源
      最近更新 更多