欢迎光临朱凯的个人博客!
朱凯,a3.work

IOS隐藏导航栏底部黑线

 发布时间: 2017-12-23 10:47      原创:  朱凯      评论: .       .人查看

首先找出黑线

//通过一个方法来找到这个黑线(findHairlineImageViewUnder):
- (UIImageView *)findHairlineImageViewUnder:(UIView *)view {
    if ([view isKindOfClass:UIImageView.class] && view.bounds.size.height <= 1.0) {
        return (UIImageView *)view;
    }
    for (UIView *subview in view.subviews) {
        UIImageView *imageView = [self findHairlineImageViewUnder:subview];
        if (imageView) {
            return imageView;
        }
    }
    return nil;
}

再定义一个imageview来等同于这个黑线 

@property (nonatomic,strong) UIImageView *navBarHairlineImageView;
//懒加载这个imageView
- (UIImageView *)navBarHairlineImageView{
    if (!_navBarHairlineImageView) {
        _navBarHairlineImageView = [self findHairlineImageViewUnder:self.navigationController.navigationBar];
    }
    return _navBarHairlineImageView;
}

页面出现时隐藏,关闭时消失

- (void)viewWillAppear:(BOOL)animated{
    navBarHairlineImageView.hidden = YES;
}
- (void)viewDidDisappear:(BOOL)animated{
    navBarHairlineImageView.hidden = NO;
}

如果想要做一些更好的处理,比如说改变粗细,颜色之类的也在界面出现的时候写就行了。

转载请注明来源:   IOS隐藏导航栏底部黑线  - 朱凯博客

分享是一种快乐,也是一种美德:
¥打开支付宝,扫码领红包¥ 红包

支付宝 aliPay

微信 wxPay