IOS:导航栏。平移视图时的奇怪渲染

时间:2015-03-10 13:52:44

标签: ios7 uinavigationcontroller uinavigationbar

我在iOS上遇到一些奇怪的渲染行为问题,如下面的屏幕截图所示。

iOS7 odd navigation/tab bar rendering behaviour

我的应用的布局架构如下:

  • 我有一个主视图控制器,它包含一个标签栏控制器和一个标准的UIViewController作为子视图控制器。

  • 标签栏控制器是用户看到的主要内容,当导航栏上有平移手势时,它会将第二个视图控制器显示为菜单视图控制器。潘揭露。

  • 我有一个标签栏控制器,其中包含一系列标签,每个标签都包含一个导航控制器。

  • 每个导航控制器都包含一个视图控制器。

当我将另一个视图控制器推到其中一个导航控制器上时出现问题 - 后退按钮出现在该控制器上。一切都很好。

之前是否有其他人遇到此问题?我正在使用外观代理来设置标签栏和导航控制器上的颜色。

1 个答案:

答案 0 :(得分:0)

事实证明,我必须将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];
}

希望这可以帮助那些遇到同样问题的人。