IOS上滑隐藏NvaigtionBar而下拉则显示效果的实现方法
来源:爱站网时间:2020-12-12编辑:网友分享
你知道在iOS中怎么上滑隐藏NvaigtionBar而下拉则显示效果吗?那么接下来就让爱站小编为大家介绍IOS上滑隐藏NvaigtionBar而下拉则显示效果的实现方法。
你知道在iOS中怎么上滑隐藏NvaigtionBar而下拉则显示效果吗?那么接下来就让爱站小编为大家介绍IOS上滑隐藏NvaigtionBar而下拉则显示效果的实现方法。
先看看原APP的效果
实现过程
主要是给view
中的滚动视图添加一个KVO
来监视它的滑动,再根据它的offset
来做一下操作,下面是代码
[myTableView addObserver:self forKeyPath:@"contentOffset" options:NSKeyValueObservingOptionOld|NSKeyValueObservingOptionNew context:nil];
获取tableView
的 contentOffset
之后再根据具体需求来实现逻辑判断
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary*)change context:(void *)context { if ([object isEqual:myTableView] && [keyPath isEqualToString:@"contentOffset"]) { //获取新值旧值 CGFloat newY = [change[@"new"] CGPointValue].y; CGFloat oldY = [change[@"old"] CGPointValue].y; float i = newY - oldY;//下拉是新值小于旧值的,所以i0 是上滑 NSLog(@"%f",myTableView.contentOffset.y); if (myTableView.contentOffset.y > -64 && myTableView.contentOffset.y 24) { if (i > 10) {//更改数值大小可以控制触发 navigation bar 的滑动速度 _isHide = YES; }else if(i
完成效果图
上文就是IOS上滑隐藏NvaigtionBar而下拉则显示效果的实现方法,其实这个效果实现起来确实没有什么难度,写这个主要是给大家看一下我的实现过程与思路,希望可以帮到大家。
上一篇:IOS如何获取系统相册中的照片
下一篇:iOS如何获取到用户当前位置