如何在导航栏中添加图像

时间:2013-05-24 06:53:03

标签: iphone ios objective-c uiimageview uinavigationbar

我想在导航栏中添加图片。它应该贯穿我的应用程序。它应该添加到所有导航控制器。

任何帮助将不胜感激。

5 个答案:

答案 0 :(得分:4)

试试这个,

UINavigationBar *navBar = self.navigationController.navigationBar;
UIImage *image = [UIImage imageNamed:@"image.png"];
[navBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

答案 1 :(得分:3)

您可以使用以下代码添加图片..

UIImage *image = [UIImage imageNamed: @"yourImageName.png"];
UIImageView *imgView = [[UIImageView alloc] initWithImage: image];
self.navigationItem.titleView = imgView;

答案 2 :(得分:2)

if ([[UINavigationBar class] respondsToSelector:@selector(appearance)])
    {
        [[UINavigationBar appearance] setBackgroundImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:imageName ofType:@"png"]] forBarMetrics:UIBarMetricsDefault];
        [[UINavigationBar appearance] setTitleTextAttributes:
         [NSDictionary dictionaryWithObjectsAndKeys:
          [UIColor colorWithRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:1.0],
          UITextAttributeTextColor,
          [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.8],
          UITextAttributeTextShadowColor,
          [NSValue valueWithUIOffset:UIOffsetMake(0, 0)],
          UITextAttributeTextShadowOffset,
          [UIFont fontWithName:@"HelveticaNeue-Bold" size:18.0],
          UITextAttributeFont,
          nil]];
    }

将此内容放入您的Appdelegate.m

答案 3 :(得分:2)

你使用这段代码:

 [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"Image.png"] forBarMetrics:UIBarMetricsDefault];

答案 4 :(得分:0)

我是一个理想的人,因为我有这样的问题,所以你可以尝试我的方式,好吧!!

首先,你创建一个navigationcontroller,然后在窗口上显示它

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

下一步:你创建一个带有图像属性的Uiimageview对象,你要添加导航栏和框架ptoperty是你想要的位置

UIImageView *imgView=[UIImageView alloc] initWithImage:[UIImage imageNamed:@"YourImagename"]; imgView.Frame=CGrectmake();

最后一步:在导航栏中添加对象imgView作为子视图

[nav.navigationBar addSubview:imgView];

完成!!!!!!!!!!