iOS7 上 NavBar 背景图像的奇怪外观
Posted
技术标签:
【中文标题】iOS7 上 NavBar 背景图像的奇怪外观【英文标题】:Strange appearance of NavBar background image on iOS7 【发布时间】:2014-03-23 11:38:07 【问题描述】:以下设置导航栏bkg图像的代码在ios6上运行良好,但在iOS7上出现奇怪的结果。
UIImage *navBackgroundImage = [UIImage imageNamed:@"nav-bkg.png"];
[[UINavigationBar appearance] setBackgroundImage:navBackgroundImage forBarMetrics:UIBarMetricsDefault];
这是 iOS 6 上的结果。
如您所见,iOS 7 出了点问题。
更新 调整为 64x64 像素
【问题讨论】:
在 iOS 7 中尝试320 × 64
图像
【参考方案1】:
猜测是因为导航栏在 iOS7 上的 Y 轴上更大(因为它包括状态栏)并且您的图像的大小正好适合 iOS 6 导航栏。为两个版本创建足够大的图像。
可以看到在ios7上,图片也是在状态栏的后面,图片底部打乱的部分正好是状态栏的高度。
【讨论】:
这不是单个图像,而是平铺的 50x50 png...我猜导航栏高度是 44,所以它适合那里? 好的。好吧,导航栏是 44,但正如您所见,包括状态栏。那么也许 44+20 像素的图像会起作用?或者你也可以垂直平铺? 你可以看到 64x64px 的结果。 似乎没有平铺...? 是的,在这种情况下只是拉伸。以上是关于iOS7 上 NavBar 背景图像的奇怪外观的主要内容,如果未能解决你的问题,请参考以下文章
分组 UITableView 的背景颜色在 iOS7 中不会透明