我想在iOS 7中清除我的导航栏。我知道之前已经问过这个问题,但我无法找到我遇到的具体问题的答案。我使用以下代码在我的App Delegate中设置了导航栏:
UINavigationBar *navigationBarAppearance = [UINavigationBar appearance];
navigationBarAppearance.backgroundColor = [UIColor clearColor];
[navigationBarAppearance setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault];
navigationBarAppearance.shadowImage = [[UIImage alloc] init];
工作正常,我的第一个导航栏很清晰。然后,当我选择一个按钮并按下一个新的视图控制器时,它会略微增加alpha值。看起来像黑色约20%alpha。见图:
然后当我按下后退按钮时,第一个视图会对其产生相同的轻微增加影响。
我已在第二个视图控制器中注释掉所有对导航栏的引用,以确保我不会意外更改某些内容。我检查了第一个和第二个视图控制器之间的IB差异,也找不到任何东西。撕掉我的头发!
答案 0 :(得分:0)
尝试在viewDidAppear
中将半透明属性设置为YESnavigationBarAppearance.translucent = YES;
答案 1 :(得分:0)
试试这个!
navigationBarAppearance.layer.backgroundColor = [UIColor clearColor].CGColor;
答案 2 :(得分:0)
正如所料,我在代码中遗漏了一些东西!
视图控制器继承自将alpha设置到导航栏上的自定义视图控制器类。