StoryBoard IOS 中的双标签栏

Posted

技术标签:

【中文标题】StoryBoard IOS 中的双标签栏【英文标题】:Dual TabBars in StoryBoard IOS 【发布时间】:2014-12-17 19:33:13 【问题描述】:

我已经看到在StoryBoardTabBarController 中添加自定义标签栏是不可能的ios。但是,单个 tabBar 可以包含多个按钮。但我想设计两个标签栏(第一个在顶部,第二个在故事板底部)以及我想在两个标签栏中间看到的内容。如何使用情节提要设计自定义标签栏? 我目前在xib 中设计,但我想摆脱xib 并且必须在情节提要上设计一个autolayout 选项卡栏,并避免在调用每个按钮时一次又一次地删除子视图。

是否可以在故​​事板中设计双标签栏?

【问题讨论】:

“故事板顶部的第一个和底部的第二个”是什么意思-您的意思是您希望它们在同一个控制器的视图中吗?您是否希望它们在跑步时同时可见?您是在使用标签栏控制器,还是将它们添加到 UIViewController? 是的,在同一个视图控制器上,我在故事板中使用标签栏控制器 【参考方案1】:

您不能同时拥有 2 个标签栏控制器。标签栏控制器不允许这样做,如果您自己创建了该外观,Apple 很可能会拒绝您的应用程序。坦率地说,这听起来像是一个非常糟糕的用户界面。

也就是说,如果你想创建一个 UI,在窗口底部有一个普通的标签栏,而另一个看起来和行为类似于顶部的标签栏的东西,你可以创建一个自定义父视图控制器类并实现您的“顶部选项卡栏”自己看,然后将该自定义视图控制器用作选项卡栏控制器中的选项卡之一。但是,我敢打赌,Apple 会拒绝违反 HIG(人机界面指南)这样的事情。

【讨论】:

非常感谢,我必须根据您的建议更改我的 UI。顺便说一句,您能否将标签栏指南的确切文档参考发送给我。再次感谢。 在 Xcode 文档中搜索字符串“标签栏让人们能够在应用程序中的不同子任务、视图或模式之间切换”。然后查找来自 iOS HIG 的搜索结果。 正确的方法是编写您自己的容器视图控制器,Apple 文档解释了您必须实现的内容 / 等等。绝对不是(容易或常规地)使用情节提要完成。我认为无论您想要实现什么,都可能有一个更好的界面。 @sammoore,这就是我在回答中所说的父视图控制器的意思。容器视图控制器是一个更好的术语。

以上是关于StoryBoard IOS 中的双标签栏的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin iOS:替换当前标签栏项目中的视图控制器

iOS 7标签栏显示在错误的位置

iOS 8 导航栏在 Storyboard 上的第二个 ViewController 中无法访问

标签栏控制器未显示所有标签

iOS两个标签栏按钮与segue相同的navigationcontroller

iOS Storyboard 滚动视图,内容围绕视图