0

我正在定制我的导航栏,所以它们都有一个徽标。我想在此处添加徽标:

导航栏中的图像

我知道导航栏有一个背景图像属性,但这会将其拉伸到整个导航栏。我只想在那里!:)

到目前为止,我已经尝试过:

UIImage *gradientImage44 = [[UIImage imageNamed:@"NavBar25High"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
    UIImage *gradientImage32 = [[UIImage imageNamed:@"NavBar25High"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
    // Set the background image for *all* UINavigationBars
    [[UINavigationBar appearance] setBackgroundImage:gradientImage44 forBarMetrics:UIBarMetricsDefault];
    [[UINavigationBar appearance] setBackgroundImage:gradientImage32 forBarMetrics:UIBarMetricsLandscapePhone];

但这就是渐变,因为正如我所提到的,它使用图像作为背景图像:(

4

2 回答 2

1

我会使用 CGRectMake 将 ImageView 分配到您想要的特定位置,并将该图像视图添加到 UINavigationController 的视图中。

像这样:

声明图像

UIImage *myImage =[UIImage imageNamed:@"header.png"];

分配图像视图

myImageView_tools = [[UIImageView alloc] initWithFrame:CGRectMake(97.5, 20, 125, 45)];

将图片设置为imageview的图片

myImageView_tools.image = myImage;

将此添加到您的导航栏。

[nameofyournavbar.view addSubview:myImageView_tools];

在我的代码中,我碰巧将它添加到 RootViewController 而不是 NavigationBar,但我想它会以同样的方式工作。

于 2013-06-13T22:52:20.340 回答
0

如何将图像添加为UIBarButtonItem. 也许使用UIBarButtonSystemItemFixedSpace具有指定宽度的项目。

于 2013-06-13T22:59:32.390 回答