Ios UINavigationBar的自定义样式无法正常工作
我正在使用此代码为所有UINavigationBars设置自定义背景图像。问题是,最终的图像似乎不是视网膜大小。我研究过UINavigationBars是640x88px。这是我的UINavigationBar.png的精确尺寸,但我在iPhone Sim卡(视网膜)和iPhone 4(也是视网膜)上只能看到320x44px 设置图像的代码:Ios UINavigationBar的自定义样式无法正常工作,ios,xcode,uinavigationbar,photoshop,Ios,Xcode,Uinavigationbar,Photoshop,我正在使用此代码为所有UINavigationBars设置自定义背景图像。问题是,最终的图像似乎不是视网膜大小。我研究过UINavigationBars是640x88px。这是我的UINavigationBar.png的精确尺寸,但我在iPhone Sim卡(视网膜)和iPhone 4(也是视网膜)上只能看到320x44px 设置图像的代码: UIImage *background = [UIImage imageNamed:@"UINavigationBar.png"]; [[UINaviga
UIImage *background = [UIImage imageNamed:@"UINavigationBar.png"];
[[UINavigationBar appearance] setBackgroundImage:background forBarMetrics:UIBarMetricsDefault];
以下是用于说明的屏幕截图:
(不同之处在于,在Photoshop中没有底暗线。在iPhone5模拟器(视网膜)中,我只能看到一半的图像。)
我的问题是为什么会发生这种情况,以及我如何解决它?谢谢。您需要有两个大小不同、名称相同的
.png
文件,但在视网膜显示文件中添加了@2x。比如说, 用于常规显示支持的文件1:
尺寸-320x44,
名称-UINavigationBar.png 视网膜显示支持文件2:
尺寸-640x8,
姓名-UINavigationBar@2x.png 在您始终使用UINavigationBar.png的代码中,设备将根据硬件自动知道要使用的witch文件