美文网首页
iOS导航条透明

iOS导航条透明

作者: 黄善军Jackie | 来源:发表于2017-11-27 06:34 被阅读6次

有时候我们需要将导航条设为透明,让展示的视图更大
那么我们可以在控制器呈现时:

- (void)viewWillAppear:(BOOL)animated {
    
    [super viewWillAppear:NO];
    
    [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    self.navigationController.navigationBar.shadowImage = [UIImage new];
}

但是pop掉的或者push其他控制器的时候,导航条依旧是透明的,因为我们更改的是同一个导航控制器的导航条的属性,所以我们最好在控制器消失时让导航条恢复:

- (void)viewWillDisappear:(BOOL)animated {
    
    [super viewWillDisappear:NO];
    
    [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
    self.navigationController.navigationBar.shadowImage = nil;
}

相关文章

网友评论

      本文标题:iOS导航条透明

      本文链接:https://www.haomeiwen.com/subject/mocrbxtx.html