有没有办法让导航控制器的栏完全透明?
我尝试过的:
[self.navigationController.navigationBar setBackgroundColor:[UIColor clearColor]]; [self.navigationController.navigationBar setBarTintColor:[UIColor clearColor]]; [self.navigationController.navigationBar setAlpha:0.0];
但酒吧的外观不会改变,并保持白色半透明.我试图看到酒吧项目,但不是酒吧本身.有人能指出我正确的方向吗?谢谢
您可以使用以下代码使导航栏透明
[self.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault]; [self.navigationBar setShadowImage:[UIImage new]]; [self.navigationBar setTranslucent:YES];
如果有人想知道如何在iOS 7中实现这一点,这里是一个解决方案(iOS 6兼容)
[self.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault]; self.navigationBar.shadowImage = [UIImage new]; self.navigationBar.translucent = YES;
由于UINavigationBar文档中讨论的行为,导航栏上的半透明设置为YES可以解决问题.我将在这里报告相关的片段:
如果在具有不透明自定义背景图像的导航栏上将此属性设置为YES,则导航栏将对图像应用小于1.0的系统不透明度.
参考来自:使UINavigationBar透明