Ios 使用外观代理或self.view.tintColor设置tintColor?
按照标题 使用外观代理设置myIos 使用外观代理或self.view.tintColor设置tintColor?,ios,Ios,按照标题 使用外观代理设置my应用程序着色颜色的优势是什么 [[UINavigationBar外观]setTintColor: 而不是仅仅与 self.view.tintColor 或者外观代理功能更强大,可以设置tabbar项外观等 最后,这是否只适用于ios7?还是我的问题的答案是通用的。谢谢。正如apple文档所说的那样:-iOS 7不支持使用外观代理API设置tintColor属性 FYI “iOS 5的UIKit外观协议,大大减少了将一致样式应用于应用程序所需的工作。无需直接自定义每个
应用程序着色颜色
的优势是什么
[[UINavigationBar外观]setTintColor
:
而不是仅仅与
self.view.tintColor
或者外观代理功能更强大,可以设置tabbar项外观等
最后,这是否只适用于ios7?还是我的问题的答案是通用的。谢谢。正如apple文档所说的那样:-iOS 7不支持使用外观代理API设置tintColor属性 FYI “iOS 5的UIKit外观协议,大大减少了将一致样式应用于应用程序所需的工作。无需直接自定义每个UIKit控件的外观,您可以自定义整个UIKit控件类的外观(例如,应用程序中的所有UIKit按钮)。UIAppearance协议通过为UIKit类创建外观代理来工作。修改外观代理的外观会修改该类所有后续实例的外观” 若要自定义类的所有实例的外观,请将相关的外观修改消息发送到该类的外观代理。例如,若要修改所有UINavigationBar实例的条形图着色颜色,请执行以下操作: [[UINavigationBar外观]设置颜色:myColor] iOS7注意事项:在iOS7上,tintColor属性已移动到UIView,现在具有UIView.h中描述的特殊继承行为。 这种继承的行为可能与外观代理冲突,因此现在外观代理不允许使用tintColor。来自Matt Neuburg编写的iOS 8编程第655页:"标题和其他文档可能会警告说
tintColor
不是合法的外观代理消息。别担心,这是合法的。但是,正常的tintColor
属性也可能与外观代理设置冲突。例如,直接设置对象的tintColor
可以撤消UIBarButtonItem的标题字体以前通过外观代理的标题文本属性设置。”