由apple sample code "LazyTableImages"谈谈scrollView的两个代理方法
来源:互联网 发布:免费弄lol网吧特权mac 编辑:程序博客网 时间:2024/05/18 01:44
LazyTableImages是苹果官方推出来的一个经典sample code,里面的代码编写风格和设计思路值得学习(八点钟学院有这样的课程来分析代码和实际编写)。
今天来说的是在lazyTableImages里出现的两个scrollView代理方法,他们的作用在于当tableView停止滑动时,进行调用加载网络图片:
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollViewwillDecelerate:(BOOL)decelerate {
if(!decelerate) {
}
}
- (void)scrollViewDidEndDecelerating:(UIScrollView*)scrollView;
对于第二个方法,我们一般会接触得多一些,意思是当scrollView停止减速动画时,会触发该方法;
第一个方法,从方法名我们可以知道,是当我们停止拖动时触发,而后面declelerate参数是代表什么意思呢?我们看看苹果官方怎么说
意思是我们手指停止拖动,离开屏幕会被调用,当手指停止拖动时,如果scrollView依然会有滑动,那么decelerate参数为YES。
那么我们会不会有这么个疑问呢?
我们在LazyTableImages这里例子里用 - (void)scrollViewDidEndDecelerating:(UIScrollView*)scrollView;这个方法不就够了,干嘛还要
在 - (void)scrollViewDidEndDragging:(UIScrollView *)scrollViewwillDecelerate:(BOOL)decelerate 这个方法里判断decelerate是否为NO呢?
通过断点调试,我们会发现:
如果你快速滑动tableView,然后松开,tableView依然继续滑动,这个时候会先调用
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollViewwillDecelerate:(BOOL)decelerate ,此时的参数decelerate为YES。
当停止滑动时,会触发
- (void)scrollViewDidEndDecelerating:(UIScrollView*)scrollView(这种情况下,我们有scrollViewDidEndDecelerating方法处理就足够了)
但是,当你手指慢慢拖动,然后松开,此时tableView没有继续滑动,那么此时只会调用
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollViewwillDecelerate:(BOOL)decelerate
而且此时的参数decelerate为NO。并不会调用- (void)scrollViewDidEndDecelerating:(UIScrollView*)scrollView 方法。
快速滑动和慢慢拖动,这两种动作在日常使用时,基本都是会用到的,所以需要在这两种方法里都进行处理!
- 由apple sample code "LazyTableImages"谈谈scrollView的两个代理方法
- scrollview的代理方法
- Comments on Apple Sample Code : CircleView
- Apple Swift3.0 Guides and Sample Code
- scrollview的一些代理方法
- scrollview的一些代理方法
- scrollview的一些代理方法
- ScrollView的代理方法 scrollViewDidEndDecelerating和scrollViewDidEndDragging
- scrollview 的各类代理方法汇总
- apple官方例子学习记录之LazyTableImages
- iOS LazyTableImages的分析
- 由两个方法写道...
- sample code
- Swift中ScrollView缩放图片的代理方法
- 184,ScrollView中常用的属性与代理方法
- 分享一个两个Android scrollView同时滚动的方法
- 通过ap运行cab安装程序的方法及Sample Code
- IOS学习 scrollView的代理
- soap消息传递和处理(基于Message和Payload的方式)
- sql server中表ID如果设置为自动递增如何实现表与表拷贝
- 深入分析Java ClassLoader原理
- 梧桐妹首露面 水汪汪大眼激似贾静雯
- 淘宝购物车展示效果列表清单
- 由apple sample code "LazyTableImages"谈谈scrollView的两个代理方法
- 第12期《 蓄势待发 》1月刊
- 古尺神奇
- 构造函数之显式初始化与赋值
- 正则表达式中的/\\\\/四个反斜杠含义
- php简单模拟后台接口创建类
- BZOJ3926: [Zjoi2015]诸神眷顾的幻想乡 广义后缀自动机
- php中for循环嵌套问题 急,!!!
- 观《啊哈算法》,积累代码(c++实现)