1

我正在研究一个简单的iphone应用程序。我试图通过设置导航项目栏的图像来设置它的样式。使用此代码设置导航项目背景和标题的怪异行为

[email protected]"Test"; 
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"navbar_bg.png"]]; 
self.navigationItem.titleView = imageView; 

首先,我必须有我的视图的标题显示,但是,一旦我加载图片它涵盖了这个标题。所以,我该如何做到这一点,以便我的标题(在这种情况下测试)将不受我的形象影响。

但是我最大的问题是,为什么我的导航栏图像显示出它在图像B中的效果,为什么后退按钮会将图像推到一边。 (这是相同的图像)想如果我可以告诉如何纠正这一点。

感谢

enter image description here

回答

0

使用下面的代码,它应该解决您的问题。

UIImage * image = [UIImage imageNamed:@"navbar_bg"]; 
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault]; 
self.navigationController.navigationBar.shadowImage = [UIImage new]; 
self.navigationController.navigationBar.translucent = NO; 
+0

谢谢,但似乎有“推”我的观点了一点,我不能在我的观点的最底部看到(在模拟器)的项目,但我可以看到他们在故事板 – 2014-08-29 04:17:44

+0

如果您的导航栏不透明(或设置背景图像,我不记得)它会改变视图如何响应顶层布局指南。确保您的约束在故事板中正确设置。 – DBoyer 2014-08-29 08:16:36

+0

@DBoyer好的,谢谢。我还没有任何限制,就像我说的,我只是没有看到我认为最底层的物体。但如果我不能改变这一点,那就没问题了 – 2014-08-29 10:11:30