在 IOS 7 导航栏问题上显示视图控制器
Posted
技术标签:
【中文标题】在 IOS 7 导航栏问题上显示视图控制器【英文标题】:Presenting view controller on IOS 7 navigation bar issue 【发布时间】:2013-09-17 07:10:25 【问题描述】:我已下载 Xcode 5 GM 种子并尝试在其上运行我的应用程序。
我为导航栏设置了一个黑色图像,在 ios 7 上完美运行。
但是每当我展示一个视图控制器时,导航栏图像都没有正确设置。它正在显示一个补丁。
代码:
[self.navigationController.navigationBar setBackgroundColor:[UIColor blackColor]];
[self.navigationController.navigationBar setBarTintColor:[UIColor whiteColor]];
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"top-nav-bar.png"] forBarMetrics:UIBarMetricsDefault];
有人遇到过同样的问题吗?
编辑: 我有与下面的链接类似的问题。 但就我而言,它仅在呈现视图控制器时出现,并且在推送时完美运行。
navigation controller bar is being cut off
【问题讨论】:
【参考方案1】:您需要注意以下几点:
tintColor 是条形按钮和标题颜色:
navigationBar.tintColor = [UIColor whitColor];
barTintColor 是条形背景颜色:
navigationBar.barTintColor = [UIColor colorWithRed:6.0/255.0 green:12.0/255.0 blue:19.0/255.0 alpha:1.0];
半透明,iOS7默认为YES
:
navigationBar.translucent = NO
;
看看下面来自 Apple 的图片:
【讨论】:
好的,但是那个家伙隐藏了状态栏,这是一个非常糟糕的主意,我认为你的问题是半透明和图像高度,将半透明设置为 NO,我认为你的 bar bg 图像将是 22px更高的高度。 bar bg 图片在推送时完美运行。但它在呈现时会引起问题。我尝试了您的解决方案,但没有运气..以上是关于在 IOS 7 导航栏问题上显示视图控制器的主要内容,如果未能解决你的问题,请参考以下文章