我正在尝试在我的应用中自定义导航栏。 导航控制器已在IB中创建。 我使用以下代码将自定义图像添加到栏中。图像为320 x 44点。 此代码位于applicationDidFinishLaunchingWithOptions中的AppDelegate中:
UIImage *navBackgroundImage = [UIImage imageNamed:@"Nav Image.png"];
[[UINavigationBar appearance] setBackgroundImage:navBackgroundImage forBarMetrics:UIBarMetricsDefault];
问题是在模拟器上,条形现在覆盖了屏幕的一半!并涵盖了大量内容。我曾尝试在Photoshop中弄乱图像尺寸并且它有所帮助,但是它们必须比通过反复试验弄乱和重建更容易吗?!!
是否有任何便捷方法可以设置导航栏的大小?
任何帮助都非常感谢!!
答案 0 :(得分:0)
快速解决方案:
转到NIB文件并选择UINavigationControler
- >尺寸检验员 - > TurnOff Autoresizing。
希望这会对你有所帮助。
一切顺利!!!
答案 1 :(得分:0)
可能是层光栅化问题:
检查是否:
layer.shouldRasterize = YES;
layer.rasterizationScale = [UIScreen mainScreen].scale;
在代码中的某处,尝试评论这些行。
(这些线通常与阴影相关联,以提高显示时的性能)。