UITabBarController 自定义

Posted

技术标签:

【中文标题】UITabBarController 自定义【英文标题】:UITabBarController customization 【发布时间】:2011-01-25 16:08:10 【问题描述】:

在我们的原生 iPad 应用中,我们需要对标签栏进行一些自定义,即:

我们希望标签栏的高度为 54px, 标签栏图标选中时的高亮颜色需要为黄色 标签栏的顶部边缘必须有轻微的阴影。

Apple 的文档指出 UITabBarController 不应该被子类化。 如果我不能继承 UITabBarController,请告知实现上述自定义的最佳方法。

谢谢。

【问题讨论】:

可能与***.com/questions/4640588/…重复 【参考方案1】:

你可以继承它,只是苹果不鼓励它,因为有人一定会搞砸它/彻底改变它的功能。如果您只是对其进行主题化并且看起来并不难看,那么事情应该没问题。

如果他们确实拒绝了它,您可以转到默认的 UITabBar 并附带它。

你可能还想看看Three20

【讨论】:

【参考方案2】:

我认为您最好的选择是使用基于UIViewController 的自定义解决方案。

我确实写了一个 ios 7+ 兼容的简单 UITabBar+UITabBarController 替换,你可以用它作为起点。它可以支持任意数量的选项卡,并使用自动布局来构建它的视图层次结构。查看NGTabBar。

【讨论】:

以上是关于UITabBarController 自定义的主要内容,如果未能解决你的问题,请参考以下文章

我可以通过 TabBarItem 上的自定义事件点击来制作自定义 UITabBarController 吗?

为 UITabBarController 使用自定义 collectionView

自定义 UITabBarController 选项卡的“更多”列表

在 UITabBarController 中自定义更多选项卡

如何自定义 UITabBarController 的“更多”按钮?

在 UITabBarController 中制作自定义 UITabBar 的正确方法