我正在尝试自定义标签栏,并使用以下代码更改背景。
UIImage *TabBarControllerBackground = [UIImage imageNamed:@"ios7TabBarBackground"];
[[UITabBar appearance] setBackgroundImage:TabBarControllerBackground forBarMetrics:UIBarMetricsDefault];
我收到以下错误:
由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [_ UIAppearance setBackgroundImage:forBarMetrics:]:无法识别的选择器发送到实例0x1e868a80'
这是为什么?它非常适合改变我的导航栏。
答案 0 :(得分:1)
让我们仔细看看这个错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[_UIAppearance setBackgroundImage:forBarMetrics:]: unrecognized selector sent to instance 0x1e868a80'
它告诉你的是UIAppearance没有实现setBackgroundImage:forBarMetrics:
选择器。
你需要放弃最后一个参数 - 显然UIAppearance不喜欢它。把它变成这个:
[[UITabBar appearance] setBackgroundImage:TabBarControllerBackground];