【问题标题】:Pushing TabBar Controller on Navigation Controller在导航控制器上推送 TabBar 控制器
【发布时间】:2011-11-16 10:47:33
【问题描述】:
我正在构建一个应用程序,有时我必须在其中显示 TabBar 控制器,但我的应用程序已经有导航控制器,因此最明显的解决方案是将 TabBar 推送到导航上。
苹果在其开发者文档中声明如下:
“你永远不想将标签栏控制器推送到导航堆栈上
导航控制器。这样做会产生一种不寻常的情况,即标签栏仅在特定视图控制器出现时出现
位于导航堆栈的顶部。
标签栏被设计为持久性,因此这种瞬态方法可能会让用户感到困惑。”
好吧,我这样做是不知道这个建议的:)。现在我想知道我的应用程序是否会因此而被拒绝。你有这方面的经验吗?您对此有何看法?
【问题讨论】:
标签:
objective-c
cocoa-touch
uinavigationcontroller
uitabbarcontroller
【解决方案1】:
我认为他们不会拒绝您的应用(不确定,但我认为没有人可以),但您的结构似乎很混乱。
看看这个:iOs Human Interface Guideline
例如:
“使用标签栏让用户可以访问同一组数据的不同视角或与您的应用的整体功能相关的不同子任务。使用标签栏时,请遵循以下准则:
不要使用标签栏为用户提供对当前模式或屏幕中的元素起作用的控件。如果您需要为用户提供控件,请改用工具栏(有关使用指南,请参阅“工具栏”)。
一般来说,使用标签栏来组织应用程序级别的信息。标签栏非常适合在主应用视图中使用,因为它是一种扁平化信息层次结构并同时提供对多个对等信息类别或模式的访问的好方法。”
我认为你应该在工具栏中转换你的标签栏。