美文网首页iOS自我学习库
iOS 隐藏导航栏底部的线条

iOS 隐藏导航栏底部的线条

作者: 巴赫海兹 | 来源:发表于2018-10-14 10:39 被阅读76次
    • 方法1

    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc]init]forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault]; 
    [self.navigationController.navigationBar setShadowImage:[UIImage new]];
    
    • 方法2

    1 声明UIImageView变量,存储底部横线 
    @implementation MyViewController 
    { 
    UIImageView *navBarHairlineImageView; 
    } 
    2 在viewDidLoad中加入: 
    navBarHairlineImageView = [self findHairlineImageViewUnder:navigationBar]; 
    3 实现找出底部横线的函数 
    - (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;
    4 最后在viewWillAppear,viewWillDisappear中处理 
    - (void)viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    navBarHairlineImageView.hidden = YES; 
    } 
    - (void)viewWillDisappear:(BOOL)animated { 
    [super viewWillDisappear:animated]; 
    navBarHairlineImageView.hidden = NO; 
    }
    
    • 方法3

    [[UINavigationBar appearance] setShadowImage:[[UIImage alloc]init]];
    

    相关文章

      网友评论

        本文标题:iOS 隐藏导航栏底部的线条

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