无法设置我的导航栏背景图片
Posted
技术标签:
【中文标题】无法设置我的导航栏背景图片【英文标题】:Can't set my navigation bar background image 【发布时间】:2015-03-31 21:55:09 【问题描述】:我想将我的表格视图导航栏背景图像更改为某个 png,我创建了具有默认导航栏确切大小的导航栏 png(我在界面生成器中签入)。
这是我的代码(在我的表格视图控制器类,viewDidLoad 方法中):
UINavigationBar *navBar = self.navigationController.navigationBar;
UIImage *image = [UIImage imageNamed:@"nav.png"];
[navBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
这不应该工作吗..?
如果有帮助,这是我在界面构建器中的表格视图设置:
顶部是我想得到的,底部是我得到的:
谢谢!
【问题讨论】:
【参考方案1】:UIImageView *backImgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"nav.png"]];
[self.navigationController.navigationBar addSubview:backImgView];
尝试在自定义视图中添加图片
【讨论】:
我添加了一张照片 - 使用你的解决方案,顶部是我想得到的,底部是我得到的 @Hemali Luhar 在您的解决方案中,我还可以将尺寸更改为 320w 和 44h @Hemali Luhar【参考方案2】:为什么不使用现有的导航栏?不要认为你需要创建一个新的......这段代码对我有用:
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav.png"] forBarMetrics:UIBarMetricsDefault];
您的 TableViewController 必须“嵌入”在导航控制器中,也就是连接到其他 ViewControllers 作为 push segue...然后您会自动获取导航栏而不是创建导航栏...我的意思是您创建导航栏并且从不添加它到视图不是吗?
【讨论】:
我添加了一张照片 - 使用您的解决方案,顶部是我想得到的,底部是我得到的 @Kreuzberg以上是关于无法设置我的导航栏背景图片的主要内容,如果未能解决你的问题,请参考以下文章