在iOS编程中,经常用到UIScrollView控件。自然也会用到UIScrollViewDelegate协议。
今天就抽空,研究了一下UIScrollViewDelegate中所有的委托方法。
仅做Mark!如有,错误之处,欢迎留言指正,交流!贴:#pragma mark - UIScrollViewDelegate 委托//scrollView滚动时,就调用该方法。任何offset值改变都调用该方法。即滚动过程中,调用多次
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{NSLog(@"scrollViewDidScroll");CGPoint point=scrollView.contentOffset;NSLog(@"%f,%f",point.x,point.y);// 从中可以读取contentOffset属性以确定其滚动到的位置。// 注意:当ContentSize属性小于Frame时,将不会出发滚动}// 当scrollView缩放时,调用该方法。在缩放过程中,回多次调用
- (void)scrollViewDidZoom:(UIScrollView *)scrollView{NSLog(@"scrollViewDidScroll");float value=scrollView.zoomScale;NSLog(@"%f",value);}// 当开始滚动视图时,执行该方法。一次有效滑动(开始滑动,滑动一小段距离,只要手指不松开,只算一次滑动),只执行一次。
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{NSLog(@"scrollViewWillBeginDragging");}// 滑动scrollView,并且手指离开时执行。一次有效滑动,只执行一次。
// 当pagingEnabled属性为YES时,不调用,该方法
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{NSLog(@"scrollViewWillEndDragging");}// 滑动视图,当手指离开屏幕那一霎那,调用该方法。一次有效滑动,只执行一次。
// decelerate,指代,当我们手指离开那一瞬后,视图是否还将继续向前滚动(一段距离),经过测试,decelerate=YES
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{NSLog(@"scrollViewDidEndDragging");if (decelerate) {NSLog(@"decelerate");}else{NSLog(@"no decelerate");}CGPoint point=scrollView.contentOffset;NSLog(@"%f,%f",point.x,point.y);}// 滑动减速时调用该方法。
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{NSLog(@"scrollViewWillBeginDecelerating");// 该方法在scrollViewDidEndDragging方法之后。}// 滚动视图减速完成,滚动将停止时,调用该方法。一次有效滑动,只执行一次。
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{NSLog(@"scrollViewDidEndDecelerating");[_scrollView setContentOffset:CGPointMake(0, 500) animated:YES];}// 当滚动视图动画完成后,调用该方法,如果没有动画,那么该方法将不被调用
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{NSLog(@"scrollViewDidEndScrollingAnimation");// 有效的动画方法为://    - (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated 方法//    - (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated 方法}// 返回将要缩放的UIView对象。要执行多次
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{NSLog(@"viewForZoomingInScrollView");return  self.imgView;}// 当将要开始缩放时,执行该方法。一次有效缩放,就只执行一次。
- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{NSLog(@"scrollViewWillBeginZooming");}// 当缩放结束后,并且缩放大小回到minimumZoomScale与maximumZoomScale之间后(我们也许会超出缩放范围),调用该方法。
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{NSLog(@"scrollViewDidEndZooming");}// 指示当用户点击状态栏后,滚动视图是否能够滚动到顶部。需要设置滚动视图的属性:_scrollView.scrollsToTop=YES;
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{return YES;}// 当滚动视图滚动到最顶端后,执行该方法
- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{NSLog(@"scrollViewDidScrollToTop");
}希望对你有所帮助!

UIScrollViewDelegate-代理API详解相关推荐

  1. Kong API Gateway 管理API详解

    Kong API Gateway 管理API详解 2018-09-25 /  Linuxops 版权说明:本文为博主原创,如果转载请注明来源.作为学习笔记,不能保证所有知识点是完全正确以及表达无误,用 ...

  2. ext核心API详解

    http://hi.baidu.com/j2me/profile 1 EXT核心API详解(一)-Ext 1 EXT核心API详解(二)-Array/Date/Function/Number/Stri ...

  3. Hotspot JNIEnv API详解(二)

    目录 一.字符串操作 1.常见的编码格式 2.乱码问题根源 3.字符串API 4.jni_NewString和jni_NewStringUTF源码解析 二.数组操作 三.Monitor操作 四.NIO ...

  4. 百度PaddleOCR及云平台OCR API详解及示例

    百度PaddleOCR及云平台OCR API详解及示例 目录 百度PaddleOCR及云平台OCR API详解及示例 使用百度开源的PaddleOCR 多个开源代码库比较

  5. 动态代理机制详解(JDK 和CGLIB,Javassist,ASM)

    2019独角兽企业重金招聘Python工程师标准>>> 在运行时期可以按照Java虚拟机规范对class文件的组织规则生成对应的二进制字节码.当前有很多开源框架可以完成这些功能,如A ...

  6. java的动态代理机制详解

    2019独角兽企业重金招聘Python工程师标准>>> 参考资料 1.java的动态代理机制详解 转载于:https://my.oschina.net/Howard2016/blog ...

  7. Java 8 Stream API详解--转

    原文地址:http://blog.csdn.net/chszs/article/details/47038607 Java 8 Stream API详解 一.Stream API介绍 Java 8引入 ...

  8. cglib动态代理jar包_代理模式详解:静态代理+JDK/CGLIB 动态代理实战

    1. 代理模式 代理模式是一种比较好的理解的设计模式.简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标 ...

  9. 【小白学PyTorch】扩展之Tensorflow2.0 | 21 Keras的API详解(下)池化、Normalization

    <<小白学PyTorch>> 扩展之Tensorflow2.0 | 21 Keras的API详解(上)卷积.激活.初始化.正则 扩展之Tensorflow2.0 | 20 TF ...

  10. Android复习14【高级编程:推荐网址、抠图片上的某一角下来、Bitmap引起的OOM问题、三个绘图工具类详解、画线条、Canvas API详解(平移、旋转、缩放、倾斜)、矩阵详解】

    目   录 推荐网址 抠图片上的某一角下来 8.2.2 Bitmap引起的OOM问题 8.3.1 三个绘图工具类详解 画线条 8.3.16 Canvas API详解(Part 1) 1.transla ...

最新文章

  1. 19、计算机图形学——蒙特卡洛路径追踪
  2. oracle判断修改,【数据库】Oracle实现判断条件批量修改功能
  3. JVM加载class文件的原理简述
  4. Java 实例 - 队列(Queue)用法
  5. python函数封装计算n运算_在Python里面怎么可以运算出999999999**999999999,求思路?...
  6. 击鼓传花c语言编程题,c语言-第5章 循环程序设计.ppt
  7. NHibernate入门实例
  8. 蓝桥杯 2017年C语言组大学B组 C/C++
  9. javascript之BOM对象总结
  10. 经典英语1000句(转)
  11. 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第4节 maven生命周期和概念模型图_08maven生命周期...
  12. 成都信息工程大学校友小程序设计方案
  13. mybatipse 下载_哇塞!可以免费下载某度文档的doc格式啦
  14. 沉没的王国---揭秘滇东自杞国(3)
  15. c语言 100匹马 编程,编程,百马百担有关问题,有100匹马,驮100担货,大马驮三担,中马驮2担,两匹小马驮一担,求大、中、小各多少匹...
  16. LR字符串截取lr_save_var
  17. 用CUPS共享打印机给笔记本和手机-20210125更新
  18. 五、需求分析建模之数据库建模
  19. vue echarts在中国地图鼠标经过同一指标下的多个省份高亮或凸起
  20. mysql行锁/表锁

热门文章

  1. 洛谷P1122 最大子树和 树形DP初步
  2. iOS开发-缓存图片到沙盒--思路
  3. 如何查看linux系统版本信息及CPU信息
  4. Eigen密集矩阵求解 2 - 求解最小二乘系统
  5. 机器学习线性回归学习心得_机器学习中的线性回归
  6. 目标检测 dcn v2_使用Detectron2分6步进行目标检测
  7. 机器学习 可视化_机器学习-可视化
  8. Linux QoS实现框架:函数调用流程图
  9. 银行利率涨了,定期存款有必要取出再存吗?
  10. 网站搭建从零开始(一)域名