我了解到,在 iOS 5 中,标有 UI_APPEARANCE_SELECTOR 的属性可以使用外观设置样式。例如 [[UINavigationBar 外观] setTintColor:....]。但是,我似乎无法为所有元素设置样式。例如,UIButton 没有标记为 UI_APPEARANCE_SELECTOR 的属性,因此我无法使用上述技术对其进行样式设置。
我的问题是:当我不能使用外观时,如何在全局范围内最好地设计元素(应用程序中的所有外观)?
现在我已经定义了一些颜色、字体、阴影偏移等,我在我的代码中使用了很多不同的地方。这允许我改变很多元素的外观和行为,但它仍然不允许我只用一行代码来设置某个对象的所有实例的样式。
编辑
由于缺乏更好的解决方案,我使用以下简单方法创建了许多类别:
+ (UIButton *)customLabelWithFrame:(CGRect)frame andText:(NSString *)text;
我还发现 - 结合所描述的类别 -可拉伸图像很好而且有用。
有了以上内容,我可以以全局方式进行样式设置,但是我对结果不满意,我仍然希望找到更好的解决方案