在 UITabBarController 中自定义更多选项卡
Posted
技术标签:
【中文标题】在 UITabBarController 中自定义更多选项卡【英文标题】:Customize More Tab in UITabBarController 【发布时间】:2016-11-24 06:55:52 【问题描述】:我需要在 UITabBarController 中自定义 More Tab TableView(或其他)。
我有这个:
我需要这个:
所以我必须:
-
更改导航栏颜色
禁用编辑按钮
删除空单元格
更改标签栏更多图标
改变背景颜色
将单元格标签向左移动几个点
当我看到这个列表时,创建简单的静态表格视图作为更多选项卡可能会容易得多,但我想知道,如果我能够按照我的需要进行自定义。
感谢您的宝贵时间!
编辑:我知道如何在经典表格视图或视图中进行此操作,但是当我有超过 5 个选项卡时,我不知道如何访问 UITabBarController 中自动创建的更多选项卡。
【问题讨论】:
你试过了吗? 我不知道如何访问那个 TableView 或者它是什么 【参考方案1】:1a) UINavigationBar 更改(顶部栏) 在你的 AppDelegate 中粘贴:
//make status bar (with time, battery status) white
UINavigationBar.appearance().barStyle = .black
//change color of your navigation bar
UINavigationBar.appearance().barTintColor = UIColor.orange
1b)改变UITabBar颜色:
//make selected tab orange
UITabBar.appearance().barTintColor = UIColor.orange
2) 禁用编辑按钮。
在您的ViewController
中创建UIBarButton
的IBOutlet
,或者如果您以编程方式创建 UIBarButton,则获取对它的引用
然后在viewDidLoad
中输入:
override func viewDidLoad()
//...
//gray out UIBarButton
myBarButton.isEnabled = false
3) 删除空单元格 将 UITableView 样式更改为在您的 IB 中分组
4) 改变表格视图的背景颜色 在 Interface Builder 中更改表格视图的背景颜色
5) 向左移动标签 创建一个自定义 UITableViewCell,拖放一个 UILabel 并根据需要调整 x 值。
编辑:更改更多标签 我猜您正在尝试修改更多选项卡的文本。当标签栏中的视图控制器超过 5 个时,会自动生成更多标签。为了以正确的语言显示文本,您必须为项目添加新的本地化:单击蓝色项目图标,进入项目设置并添加新语言,如屏幕截图所示。 如果您现在在已添加本地化(例如德语、法语)的设备上运行应用程序,则文本应该以正确的语言显示。
【讨论】:
当它不在情节提要中时,如何创建该 IBOutlet?当我在标签栏中有超过 5 个标签时,会自动生成更多标签。我不知道,如何访问它。如果我将它放在 StoryBoard 中,我知道如何完成我列表中的每一点。 @Lifeplus 你找到答案了吗?以上是关于在 UITabBarController 中自定义更多选项卡的主要内容,如果未能解决你的问题,请参考以下文章
在 UITabBarController 中覆盖 UITabBar
在 TabBArController 中自定义 tabBarItems 的外观