2011-05-10 48 views
7

我设法使用this更改navBar色调,背景色和标签的颜色。更改moreNavigationController图标的颜色

但是可以更改图标的颜色吗?

(那些留下来的tableview的标签)

谢谢!

My half-done work

+0

正在编辑图像的选项? – 2011-05-10 18:28:36

+0

更改png颜色不会改变任何内容。 – Abramodj 2011-05-10 19:21:55

+0

您是指标签栏图标还是表格视图单元格图像? – 2011-05-10 19:25:27

回答

7

我不知道的方式来改变图标的​​颜色,但我真的不认为这一切黑客是必要无论如何 - Apple certainly doesn't recommend it

据我所知,除了难以定制之外,moreViewController没有什么特别之处。如果是我,我只需创建自己的自定义视图控制器(称为MoreViewController)作为UITableViewController的子类,将其添加到NavigationController,然后将其添加为TabBarController中的第五个也是最后一个项目。然后,此表格将为每个我想要显示的附加视图控制器提供一个单元格。然后,我可以自由地将这些细胞定制到我的内心。

+2

作为一个旁注,通过两年多的iOS应用程序,我还没有实际使用隐藏在“更多”按钮中的任何功能。我强烈建议重新考虑你的GUI,并试图找到一种方法,使其保持在最多五个标签。或者甚至可能重新考虑您将多少功能添加到应用程序中。 – 2011-05-16 15:01:54

+2

我见过有意义的例子。例如,在新闻应用程序中,您可能需要每个“主题”选项卡,并且通过更多按钮,您可以选择哪些是您最喜欢的主题,以便始终保持一次轻按,使用更多按钮与其他人进行比较。我会说这适用于大多数应用程序,你基本上只想使用一种类型的内容,然后使用选项卡通过“子类型”分隔它们。不过,我必须同意,这里提出的应用程序看起来不像那种应用程序... – 2011-05-20 06:46:29

+0

我的应用程序是这种应用程序! – Abramodj 2011-05-20 10:18:40

3

这是一个老问题,但我会发布一个相当合理的解决方案,我发现。

我首先尝试将全局色调设置为我想要的,但这并不奏效。幸运的是,只需更改表格视图的色调颜色即可使用。从here适应代码:

let color: UIColor 
// ... 
if let moreTableView = moreNavigationController.topViewController?.view as? UITableView { 
    moreTableView.tintColor = color 
} 

这似乎仍不但是影响编辑视图控制器。

编辑: 其实有更简单的方法做两件事,看this answer