UINavigationBar的外观覆盖5
问题描述:
我有下面的代码:UINavigationBar的外观覆盖5
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navbarBackBlack.png"] forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navbarBackBlack.png"] forBarMetrics:UIBarMetricsLandscapePhone];
[[UINavigationBar appearance] setTintColor:[UIColor colorWithWhite:0.72 alpha:1.0]];
但现在我想在我的应用程序一个地方,我想要的导航栏,以不同的颜色比这个普遍的颜色我已经设置了整个应用程序。我怎样才能改变这个只为这个特定的设置。可能吗?
答
您也可以在导航栏的实例上调用setBackgroundImage。
看到这个相关的帖子:
Custom UITabBar background image not working in iOS 5 and later
你也应该调理它是否响应该选择:
if ([navBar respondsToSelector:@selector(setBackgroundImage:)])
{
[navBar setBackgroundImage:[UIImage imageNamed:@"tabbar_brn.jpg"]];
}
else
{
// ios 4 code here
}
答
只需在导航栏实例上直接使用外观方法,而不是在appearance
代理对象上使用外观方法。
[navBarInstance setBackgroundImage: ... ];
怎么样着色颜色?我似乎无法做到这一点 – adit 2012-02-25 21:28:36