iOS隐藏导航条黑线显示导航条黑线
在开发中我们常常遇到导航条影响整体设计的问题,现在列出一下几个问题
1.整个项目不需要导航条黑线
自定义在NavigationController在load方法里获取全局的NavigationBar,设置背景和阴影图片
+(void)load{
//要获取自定义UINavigationController的全局UINavigationBar
UINavigationBar *bar = [UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[self class]]];
//隐藏黑线
[bar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
[bar setShadowImage:[UIImage new]];
}
2.个别控制器不需要黑线
在需要隐藏nav黑线的控制器viewWillAppear去除黑线,在viewWillDisappear里恢复
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:NO];
//去除黑线
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setShadowImage:[UIImage new]];
}
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
//nav黑线回来
[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setShadowImage:nil];
}
最近在开发音频播放器,更多内容请联系扣扣:540030443;