【发布时间】:2011-08-15 19:50:56
【问题描述】:
我的导航栏中有一个带有 2 个 UIBarButtonItems 的导航控制器。我只想更改右侧的色调颜色。我在静态中找到了一种方法来做到这一点:
[[self.navigationController.navigationBar.subviews objectAtIndex:2] setTintColor:[UIColor redColor]];
问题是当我将控制器推入导航控制器以显示另一个视图时,当我返回到我的右导航栏按钮应该具有自定义颜色的根视图时,按钮的颜色又回到它的默认值。当我再次点击它时,应用程序崩溃了。它说它不能改变色调颜色,就像我的导航栏中这个元素的索引改变了一样。
我尝试了互联网上的其他技术,但是当我使用导航控制器并返回根控制器时它们都失败了......
有什么想法吗? 谢谢!
编辑 1:
我想在 UINavigationBar 中有一个带边框的样式按钮,背景颜色为红色或绿色。
关于我发现的其他方式,它几乎是导航栏中视图的 foreach 循环,如果视图的类是按钮项,则更改 tintColor。它不会崩溃,但它适用于我的导航栏的所有 UIBarButtonItem (我只想要一个特定的按钮,正确的按钮,而不是全部)。例如this tutorial 工作一半,我的应用程序在返回根视图控制器时崩溃。
【问题讨论】:
-
大多数时候我们无法提出一个好的解决方案,所以我不能说我们解决了我的问题。这可能是我的利率低的原因,也是因为未回答的问题。否则,如果某人解决了甚至部分帮助我解决了我的问题,我会感谢他...
-
@Erik B 那你让我更容易了,你对我的问题一点帮助都没有。所以我不会给你任何功劳。但是我会记住你对我的旧帖子和下一个帖子所说的话,学习一些东西总比什么都没有好,对吧?祝你好运。
标签: iphone uinavigationcontroller uibarbuttonitem tintcolor