使图像适合UINavigationBar吧

时间:2013-04-03 03:57:40

标签: iphone ios objective-c xcode cocoa

我得到了我想在导航控制器中使用的图像:

enter image description here

我这样设置(遵循this问题的建议):

UINavigationBar *theBar = self.navigationController.navigationBar;
if ( [theBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] ) {
    UIImage *image = [UIImage imageNamed:@"cabecalho.jpg"];
    [theBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}

但是当我运行我的应用程序时,我明白了:

enter image description here

我该怎么做才能使我的图像适合导航控制器?

谢谢。

2 个答案:

答案 0 :(得分:2)

尝试使用以下代码

[self.navigationBar setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"myImage.png"]]];

请参阅How to add background image on iphone Navigation bar?这个可能对您有所帮助的问题。

答案 1 :(得分:0)

我发现解决方案遵循this问题的例子。

当我创建UINavigationController时,我这样做:

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:viewLista];

if ([nav.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] ) {
    UIImage *image = [UIImage imageNamed:@"cabecalho.png"];
    [nav.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
}

现在它运作良好。