【问题标题】:IOS: Navigation bar. Odd rendering when panning the viewIOS:导航栏。平移视图时出现奇怪的渲染
【发布时间】:2015-05-12 00:01:52
【问题描述】:
我在 iOS 上遇到了一些奇怪的渲染行为问题,如下面的屏幕截图所示。
我的应用的布局架构如下:
我有一个主视图控制器,其中包含一个标签栏控制器和一个标准 UIViewController 作为子视图控制器。
标签栏控制器是用户看到的主要内容,当导航栏上有平移手势时,它会将第二个视图控制器显示为菜单视图控制器。平移显示。
我有一个标签栏控制器,其中包含一系列标签,每个标签都包含一个导航控制器。
每个导航控制器都包含一个视图控制器。
当我将另一个视图控制器推到其中一个导航控制器上时会出现问题 - 出现后退按钮的位置。其他时间一切正常。
以前有没有其他人遇到过这个问题?我正在使用外观代理来设置标签栏和导航控制器上的颜色。
【问题讨论】:
标签:
ios7
uinavigationcontroller
uinavigationbar
【解决方案1】:
事实证明,我必须将 NavigationBar 和 Tab 栏的半透明设置为 NO,这似乎已经修复了它。
在我的标签栏控制器中,我在 viewDidLoad 中添加了以下行
- (void)viewDidLoad {
[super viewDidLoad];
[self.tabBar setBarTintColor:[UIColor whiteColor]];
[self.tabBar setTintColor:[UIColor redColor]];
[self.tabBar setTranslucent:NO];
}
在我的 NavigationController 中,我将以下内容添加到 viewDidLoad
- (void)viewDidLoad {
[super viewDidLoad];
[[UINavigationBar appearance] setBarTintColor:[UIColor redColor]];
[[UINavigationBar appearance] setTintColor:[UIColor whiteColor]];
[self.navigationBar setTranslucent:NO];
}
希望这可以帮助遇到同样问题的其他人。