现在我先写出两种可以使navigationBar变透明的方法:
方法一:直接根据视图层级,拿到半透明的图层,然后设置alpha;
[[self.navigationController.navigationBar.subviews objectAtIndex:0] setAlpha:0];
方法二:设置两个image
[self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault];
self.navigationController.navigationBar.shadowImage = [[UIImage alloc] init];
再就是看到知乎上有写道,让nav变成透明,然后在下面伪装一个带颜色的view伪装成nav,可以很好的解决push和pop应共用同一个nav造成重叠的问题;
下面这两篇文章,待我有空时,再细细品尝;
navbar透明深入研究
navbar和statusbar的扩展