1.实现UIScrollViewDelegate

开始滑动:

- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView

滑动过程:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView

滑动结束:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView

注意:无伦用户如何滑动scrollView,只要有滑动,就会调scrollViewWillBeginDecelerating,只有scrollView当加速度停止之后,才会调用scrollViewDidEndDecelerating

2.有了以上条件,就为限制加载提供了实现方式

首先,定义一个有计数功能的变量,如int yesToLoad,初始化为0

然后,在scrollViewWillBeginDecelerating函数中让yesToLoad+=1,在scrollViewDidScroll中判断yesToLoad是否等于1,如果不等,则表明用户快速滑动了scrollView

最后,在scrollViewDidScroll将yesToLoad置为0,以便下一次测试用户是否暴力而这个判断也可以用在scrollViewDidScroll,如果yesToLoad不等于1,则执行你需要的函数

3.在实际应用过程中,就以上两个条件,会存在一个小小的bug,比如用户连续的来回滑动,或都小小的滑动加点击,这样屏幕会闪,于是再加上一个判断条件

moveLeng = 0;(初始化)

在- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView,最后让moveLeng等于滑动偏移量

moveLeng = scrollView.contentOffset.x;

在2判定的加上与,如果scrollView.contentOffset.x-moveLeng小于或者大于某一个值,则执行某个操作

转载于:https://www.cnblogs.com/gatsbywang/p/5504285.html

ios 中如何应对UIScrollView快速滑动(暴力用户,暴力测试)相关推荐

  1. iOS中使用c函数快速获取一个目录所占的空间大小

    在编写iOS应用时,我们都会大量把服务器的接口调用数据或者图片数据进行缓存,为了更好的使用体验,有时候我们也会把各种缓存的数据所占的空间大小告诉用户,提供给用户参考,并让用户可以手动清除缓存数据,就像 ...

  2. sql创建表主键gui_在SQL Server中使用主数据服务快速创建最终用户可以维护的GUI

    sql创建表主键gui 介绍 ( Introduction ) Oft times we are forced into situations where we clearly need to thi ...

  3. iOS 中使用 Mobile Installation 安装 IPA(使用iTunes/AppStore一样的安装API)

    iOS 中要安装一个程序,从用户角度看有三种: 1. 类似 Cydia 这种 DEB 的方式:直接安装到 /Applications 作为系统的APP,无法长按删除(不讨论CyDelete). 2. ...

  4. ios中在app中安装ipa的方法

    转自http://www.yonsm.net/post/553,http://since2006.com/blog/240/ios6-mobileinstallationinstall iOS 中要安 ...

  5. 原创分析:iOS 中使用 Mobile Installation 安装 IPA(使用iTunes/AppStore一样的安装API)

    原文:http://www.yonsm.net/post/553 iOS 中要安装一个程序,从用户角度看有几种三: 1. 类似 Cydia 这种 DEB 的方式:直接安装到 /Applications ...

  6. iOS一行代码让你的应用中UIScrollView的滑动与侧滑返回并存

    侧滑返回是iOS系统的一个很贴心的功能,特别是在大屏手机上,单手操作的时候去按左上角的返回键特别不方便.当我在使用一个APP的时候,如果控制器不能侧滑返回,我会觉得这个APP十分不友好...这款产品在 ...

  7. iOS中的UIScrollView(滑动视图)

    2019独角兽企业重金招聘Python工程师标准>>> UIScrollView  可以滑动的视图 #import "ViewController.h"@inte ...

  8. iOS 全屏侧滑/UIScrollView/UISlider间滑动冲突

    代码地址如下: http://www.demodashi.com/demo/13848.html 效果预览 一.前期准备 有一个支持全屏侧滑返回的视图控制器ViewController,ViewCon ...

  9. ios 中的小技巧 - 总有你想要的 一

    UITableView的Group样式下顶部空白处理 在viewWillAppear里面添加如下代码: //分组列表头部空白处理 CGRect frame = myTableView.tableHea ...

最新文章

  1. Fastadmin管理Mysql_FastAdmin-CMS模版制作(6)-正式部署
  2. SpringBoot 实战定时任务 Scheduled
  3. 关于上拉电阻的使用总结
  4. 用python倒序输出一个字符串_Python 反转字符串(reverse)的方法小结
  5. 总结Python机器学习中的回归算法
  6. 解决svn图标不显示(绝对有用)
  7. pmp每日三题(2022年2月22日)
  8. Google 节日徽标全集 (1999-2009) (下)
  9. 防火墙阻止网页连接网络连接_win7电脑打不开网页怎么办 win7电脑打不开网页解决步骤【图文步骤】...
  10. SQL数据库相关 FMDB框架的使用
  11. 一个最简单的SPRINGMVC示例
  12. tar,jar,war的区别
  13. Android签名 (二) 制作签名文件
  14. 【Python表白代码】“情话都是我抄来的,想说给你听是真的。”情人节快乐~
  15. 戴尔服务器连接显示器无信号 键盘灯不亮,键盘灯不亮按键没反应怎么回事及解决办法...
  16. 智能家居十大必备功能 乐享真正智能生活
  17. pytorch 中pad函数toch.nn.functional.pad()的使用
  18. FitLine+直线拟合+C++
  19. 惠普541笔记本更换内存条_从两个方面来了解内存条和主板的兼容性问题
  20. B站APP测试框架解析

热门文章

  1. 特斯拉电动卡车霸气发布,还有一个意外惊喜(全新跑车)
  2. 课堂作业-1成绩汇总
  3. spring security oauth2 资源服务器配置
  4. php 简单日志搜索
  5. C# devexpress gridcontrol 分页 控件制作
  6. NSA漏洞预防,关闭有漏洞的端口
  7. CentOS6.x 下 LNMP环境搭建(二、安装 Nginx)
  8. Linux Windows下忘记mysql超级管理员root密码的解决办法
  9. 一个能支持Flash的广告控件
  10. 撤销commit且未push操作的git命令