我司产品汪突然喜欢上了 知乎
和 简书
的的那种上滑加载更多时隐藏 NavigationBar
,下拉时显示的那种效果。那些阅读类APP需要 沉浸式体验
隐藏导航栏无可厚非,我就纳闷一个P2P类软件你隐藏个毛线!废话少说,技术很好实现几行代码的事。
在包含 TableView
或者 ScrollView
的.m文件中加入以下代码:
在页面即将消失时显示NavigationBar,让下一个页面显示时 NavigationBar
显示状态:
//滑动隐藏导航栏 LiXingLe -(void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; self.navigationController.navigationBarHidden = NO; }
实现 ScrollView
的代理:
#pragma mark 滑动隐藏导航栏 //滑动隐藏导航栏 LiXingLe -(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{ if(velocity.y>0) { [self.navigationController setNavigationBarHidden:YES animated:YES]; } else { [self.navigationController setNavigationBarHidden:NO animated:YES]; } }
现在运行一下如果上滑的时候顶部没有变黑就OK了,如果NavigationBar 隐藏后顶部变黑,加上下面的代码, 在 viewDidLoad
中添加:
//滑动隐藏导航栏 LiXingLe if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) self.edgesForExtendedLayout = UIRectEdgeNone;
微信公众账号: lecoding
同步更新,你也可以扫描下方二维码关注我们。