【iOS】UINavigationBar透明设置

     最近在做一个视频直播的app,需要将导航条设置成透明,最开始想通过颜色clearColor设置,设置透明度,结果发现UINavigationItem无法显示显示,后来通过setBackgroundImage设置成功,不过会多出一条线白线,需要通过setShadowImage设置背景图片,代码如下:

-(void)viewWillAppear:(BOOL)animated{

[superviewWillAppear:animated];

[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];

[self.navigationController.navigationBar setShadowImage:[UIImage new]];

}

如果不想影响其他页面的导航透明度,viewWillDisappear将其设置为nil即可:

-(void)viewWillDisappear:(BOOL)animated{

[superviewWillDisappear:animated];

[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];

[self.navigationController.navigationBar setShadowImage:nil];

}

你可能感兴趣的:(【iOS】UINavigationBar透明设置)