隐藏导航条底部的黑线_Swift下怎么去除Navigationbar下方的横线
2018-11-09 14:31:56  By: dwtedx

估计是因为ios更新的原因,之前项目都是好好的,NavigationBar是没有黑线的,估计是因为更新的原因,导致NavigationBar又出现了黑线。用一个全透明的图片去覆盖navigationBar,这样运行模拟器,Navigationbar下方会出现一条横线,而有时候我们不需要这条横向,影响美观,那么这调横线是怎么形成的?

其实,这是shadoImage 在作怪,这调横线其实是NaVigationBar下产生的阴影效果,贴在一起就出现了横线的样式,其实很简单,如下代码就可以解决黑线了


Swift代码

override func viewWillAppear(_ animated: Bool){
    super.viewWillAppear(animated)
    
    self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
    self.navigationController?.navigationBar.shadowImage = UIImage()
    
}


OC代码

根据UI的设计,navigationbar需要跟界面一体化,但是下面这根黑线是比较烦的问题,可能界面一需要隐藏,界面二就要出现,也可能需要改变粗细之类的,又因为navigationbar会影响接下来的推栈,所以需要做一点小改动。

//在页面出现的时候就将黑线隐藏起来
 -(void)viewWillAppear:(BOOL)animated
{
    [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    [self.navigationController.navigationBar setShadowImage:[UIImage new]];
}

//在页面消失的时候就让navigationbar还原样式
-(void)viewWillDisappear:(BOOL)animated{
 
    [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
    [self.navigationController.navigationBar setShadowImage:nil];
}


若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
top
+