小白一枚,最近敲代码碰到的问题,上滑隐藏到货栏,跳到下一个页面,返回来导航栏又出来了。
我用的是这种隐藏方式。一开始用-(void)scrollViewDidScroll:(UIScrollView *)scrollView
这个方法,如果第一个界面隐藏了导航栏,跳到下一个界面导航栏出不来,一闪而过。小白表示不明所以然。
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{
if (velocity.y<0) {
[self.navigationController setNavigationBarHidden:NO animated:YES];
self.isNaviHidden=NO;
}else
{
[self.navigationController setNavigationBarHidden:YES animated:YES];
self.isNaviHidden=YES;
}
}
其中加了个Bool属性纪录是否隐藏了导航栏。然后:
-(void)viewWillAppear:(BOOL)animated
{
if (self.isNaviHidden) {
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
}
在viewWillAppear里加了个判断,就可以了。