appearance属性是一种可以修改全部控件外部特征的属性。适用于后面带有UI_APPEARANCE_SELECTOR这些英文的方法。如:
例子:
代码:
[[UINavigationBarappearance]setBackgroundImage:[UIImageimageNamed:@"navigationbarBackgroundWhite"]forBarPosition:UIBarPositionAnybarMetrics:UIBarMetricsDefault];
会使所有的导航栏的背景图片都变成这样的,不管是自定义的导航栏,还是系统的导航栏,都会被改变。
如要只需要自定义的导航栏的背景图片为这这张图,代码如下:
// appearanceWhenContainedIn:[selfclass]只有在这个类下,才执行appearance
UINavigationBar*bar = [UINavigationBarappearanceWhenContainedIn:[selfclass],nil];
[bar setBackgroundImage:[UIImage imageNamed:@"navigationbarBackgroundWhite"] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];