美文网首页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