iOS:只改变UIView的外观(没有子类) - 可能吗?

jim*_*pic 1 ios uiappearance

我有一个包含许多视图控制器的项目,我希望它们都具有平铺背景图像的父视图.现在我能做到

[[UIView appearance] setBackgroundColor:
    [UIColor colorWithPatternImage:[UIImage imageNamed:@"BackgroundPattern"]]];
Run Code Online (Sandbox Code Playgroud)

问题是,这也将设置所有其他的背景UIView子类对象(UIButtons,UILabels,等).我该怎么做才能改变UIView背景?

Gab*_*lla 6

如果您appearance在类级别使用代理,则别无选择.您将修改每个UIView子类.

我没有看到许多其他的子类化选项UIViewController,只改变了该子类的视图的外观,然后使UIViewController第一个子类的所有其他子类.