tablevView实现惯性滑动到顶部时不反弹
2016-01-01 10:05
381 查看
用力下拉tableView,tableView靠惯性滑动,滑动到顶部时不让其有反弹效果。主要原理是在tableView自己靠惯性滑动过程中不断判断tableView的contentOffset,为0(或-64,状态栏+导航栏)的时候就不再减小。代码如下:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//限制下拉的距离
if(scrollView.contentOffset.y<-70 && scrollView.isDragging){
[scrollView setContentOffset:CGPointMake(0, -70)];
}
//以0为例,当tableView还在滑动的时候,不断设置contentOffset
if(scrollView.contentOffset.y<0 && scrollView.isDecelerating){
[scrollView setContentOffset:CGPointMake(0, 0)];
}
[super scrollViewDidScroll:scrollView];
}
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//限制下拉的距离
if(scrollView.contentOffset.y<-70 && scrollView.isDragging){
[scrollView setContentOffset:CGPointMake(0, -70)];
}
//以0为例,当tableView还在滑动的时候,不断设置contentOffset
if(scrollView.contentOffset.y<0 && scrollView.isDecelerating){
[scrollView setContentOffset:CGPointMake(0, 0)];
}
[super scrollViewDidScroll:scrollView];
}
相关文章推荐
- angularjs惯性滚动指令
- iOS 【UIKit-UIScrollView】
- contentSize、contentInset和contentOffset
- UIScrollView中contentSize、contentInset、contentOffset介绍
- IOS中UIScrollView的contentSize、contentOffset和contentInset属性
- 惯性导航
- scrollview, contentSize, contentOffset, contentInset
- iOS: UIScrollView的属性contentOffset
- tableView下拉距离限制
- 惯性是创新的天敌 推荐
- 步法与剑术
- 技术者的好奇心和惯性 推荐
- 如何设置scrollview的contentoffset却不触发DidScroll方法
- iOS基础控件:UIScrollView 之三大属性 contentOffset 、contentSize 、contentInset 之间的区别
- [Android] RecyclerView滑动没有惯性效果
- #747 –在WPF程序的触摸操作中使用惯性移动 (Implementing Inertia during Touch Manipulation)
- OKVIS中imu代码应用在ORB_SLAM2中的解读
- 为什么scrollview中手指向上滑时contentOffset是增大的
- NavigationBar设置对UICollectionView的content显示偏移影响
- cocoa touch——UIScrollView——content view