self.navigationItem.title = @"navigationBar";
self.navigationController.navigationBar.backgroundColor = [UIColor clearColor];
self.view.backgroundColor = [UIColor colorWithRed:0.064 green:0.522 blue:1.000 alpha:1.000];
然而 导航栏并没有变成透明,好像被什么遮住了一样,为什么呢?
我们用 Reveal 来分析一下视图
navigationBar 上面有一个 ImageView 的子视图,所有我们直接改变navigationBar的backgroundColor是没有用的,
self.navigationItem.title = @"navigationBar";
self.view.backgroundColor = [UIColor colorWithRed:0.064 green:0.522 blue:1.000 alpha:1.000];
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
//去除 navigationBar 底部的细线
self.navigationController.navigationBar.shadowImage = [UIImage new];
实现效果,导航栏透明