2016-06-30 30 views
0

我已经尝试了很多东西,没有一个解决了我的问题。 我得到警告:未能设置(tintColor)

无法设置(tintColor)用户定义的检查上 (UINavigationController的)属性:[ 的setValue:forUndefinedKey:]:这个类不是关键值 编码兼容的关键tintColor 。

我通过StoryBoard完成的所有色彩变化。我的代码是用Swift编写的。 故事板片段(当发生这种情况)是这样的:

的ViewController - > TabBarController - > NavigationController - >的ViewController

唯一的 “用户定义的运行属性” 是tintColor(在NavigationController),但除去该没”帮助。

任何想法?

+0

检查NavigationController的'Inspector',看看是否有一些不需要的连接。 – ronan

+0

UINavigationController没有tintColor属性。您可以在视图的层次结构中设置tintColor属性(色调值),而不是视图控制器的层次结构中。 – user3441734

+0

感谢所有的答案,没有就没有不希望的连接, @ user3441734对不起,我的意思是我设置的UITabBarItem的tintColor, 此外,我试着用tintColor在故事板(在源码视图)发表评论的一切,这也没有帮助。 – Axel

回答

0

我发现解决方案,我的同事分别设置每个导航控制器的颜色。只需从所有导航控制器中删除“tintColor”即可。 谢谢@ user3441734。 NavigationController也不会从UIView继承。

+0

好吧,使用代码集tintColor将覆盖故事板上的设置。 – EricXuan

+0

@EricXuan如果可能的话,你应该使用StoryBoard,并且只能使用代码中的自定义工作人员。如果你在代码中做所有事情,你会在更大的项目中陷入混乱。 – Axel

+0

是的,我说得对。我只发布改变tintColor的方式。 – EricXuan

0

如果你只是想在的viewController的viewDidLoad改变一个特定NavigationController的色调颜色,添加代码

navigationController?.navigationBar.tintColor = /*your color*/ 

()。

或者你想改变所有NavigationController的色调的颜色,你可以添加代码

UINavigationBar.appearance().tintColor = /*your color*/ 
在FUNC应用

(应用程序,didFinishLaunchingWithOptions)

或者你可以在改变应用的着色颜色故事板文件使用全局色调颜色选项。

+0

我在StoryBoard中修改了它,但这个工作正常,但我收到了警告,不明白为什么。 – Axel

+0

您在tintColor中设置了哪些控制器或控制器? – EricXuan

相关问题