iOS 隐藏导航栏底部的线条

  • 方法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]];
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容