使用外观代理或self.view.tintColor设置tintColor?

时间:2014-04-01 05:25:48

标签: ios

按照标题。

使用外观代理设置app tint color有什么好处 [[UINavigationBar appearance] setTintColor

相反

self.view.tintColor

或者外观代理功能更强大,能够设置tabbar项目外观等。

最后,这仅适用于ios7吗?或者是我的问题的答案是普遍的。谢谢。

1 个答案:

答案 0 :(得分:1)

正如Apple Docs所说: - iOS 7不支持使用外观代理API设置tintColor属性。

<强> FYI

&#34; iOS 5的UIAppearance协议大大减少了将一致样式应用于应用程序所需的工作量。您无需直接自定义每个UIKit控件的外观,而是可以自定义整个UIKit控件类的外观(例如,应用程序中的所有UIButton)。 UIAppearance协议通过为UIKit类创建外观代理来工作。修改外观代理的外观会修改该类的所有后续实例的外观&#34;。

要自定义类的所有实例的外观,请将相关的外观修改消息发送到类的外观代理。例如,要修改所有UINavigationBar实例的条形色调颜色:     [[UINavigationBar外观] setBarTintColor:myColor];

iOS7注意事项:在iOS7上,tintColor属性已移至UIView,现在具有UIView.h中描述的特殊继承行为。     此继承行为可能与外观代理冲突,因此现在不允许使用外观代理来使用tintColor。