UIScrollView监听静止的数种情况
1.直接通过block
-(void)testInBlock
{
//通过block监听
[UIView animateWithDuration:1.0 animations:^{
self.scrollView.contentOffset = CGPointMake(50, 20);
} completion:^(BOOL finished) {
NSLog(@"滚动完毕");
}];
}
2.代理中的 scrollViewDidEndScrollingAnimation:
方法
触发条件:使用setContentOffset:animated:或者scrollRectToVisible:animated:方法让scrollView产生滚动动画
-(void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
{
NSLog(@"静止-[使用setContentOffset:animated:或者scrollRectToVisible:animated:方法让scrollView产生滚动动画, 最后静止]");
}
3.代理中的scrollViewDidEndDecelerating:
方法
触发条件:人为拖拽scrollView产生滚动动画(手松开以后由于惯性会继续滚动)
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
NSLog(@"静止-[手松开以后由于惯性继续滚动, 最后静止]");
}
4.代理中的scrollViewDidEndDragging: willDecelerate:
方法
decelerate为YES : 手松开后会由于惯性继续滚动;NO : 手松开后立即静止
-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
if (decelerate) {
NSLog(@"手松开后由于惯性继续滚动");
} else { // 手松开后立即静止
NSLog(@"静止-[手松开后立即静止]");
[self afterIdle];
}
}
UIScrollView监听静止的数种情况的更多相关文章
- springboot 中事件监听模型的一种实现
目录 定义事件本身 定义事件源 定义监听者 一.需要实现 ApplicationListener 二.使用 @EventListener 注解 测试 项目结构 前言: 事件监听模型是一种常用的设计模式 ...
- 通过jQuery实时监听表格行数变化
[本文出自天外归云的博客园] 使用bootstrap table组件,当使用过滤器的时候,页面的表格行数发生变化,此时需要统计表格行数.想要监听表格变化,如何做呢? 使用场景:有一个表格里放着许多测试 ...
- ASP.NET Core中配置监听URLs的五种方式
原文: 5 ways to set the URLs for an ASP.NET Core app 作者: Andrew Lock 译者: Lamond Lu 默认情况下,ASP. NET Core ...
- Second Day: 关于Button监听事件的三种方法(匿名类、外部类、继承接口)
第一种:通过匿名类实现对Button事件的监听 首先在XML文件中拖入一个Button按钮,并设好ID,其次在主文件.java中进行控件初始化(Private声明),随后通过SetOnClickLis ...
- miniui 给表格行添加监听事件的几种方法以及点击某列列名数据不能排序的问题
最近在使用miniui框架做开发,在做表格行的点击监听事件中发现了几个属性,都可以起到监听效果但是执行的结果却大有不同.好了废话不多说,直接上代码. <div id="pageGrid ...
- JS003. 事件监听和监听滚动条的三种参数( addEventListener( ) )
全局 1 window.addEventListener('scroll', () => { 2 console.log('------') 3 console.log(document.doc ...
- oracle登陆,在监听服务启动了的情况下,登陆用户还是报错未启动监听服务的错误(刚开始装oracle是能登陆的,重启之后装了plsql)
刚开始装oracle是能登陆的,重启之后装了140M的plsql,所以有可能是plsql跟oracle监听冲突了,所以我之后换了33M的plsql,oracle就没问题了,可以正常登陆了
- 解决Oracle监听错误的一种办法
1:事出有因 安装oracle数据库,默认安装的是orcl数据库,安装完成后查看了一下字符集是gbk的,由于业务需要al32utf8的字符集,所以需要修改字符集,但是修改却无效.于是就删除了默认的or ...
- Android的事件处理机制详解(二)-----基于监听的事件处理机制
基于监听的事件处理机制 前言: 我们开发的app更多的时候是需要与用户的交互----即对用户的操作进行响应 这就涉及到了android的事件处理机制; android给我们提供了两套功能强大的处理机制 ...
随机推荐
- 【转】JavaScript和Java的区别
虽然JavaScript与Java有紧密的联系,但却是两个公司开发的不同的两个产品. Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合于Internet 应用程序开发:而Ja ...
- plsql数组、表和对象
--数组DECLARE TYPE test_plsql_varray IS VARRAY(100) OF VARCHAR2(20); temp_varray1 test_PLSQL_VARRAY := ...
- CNN 各layer汇总
Flattening:类型为:Flatten 基于某个axis进行偏平的意思,如 axis = 1 ,fattens an input of shape n * c * h * w to a simp ...
- Linux查看网络和IO性能问题
Linux上使用iftop可以查看网络使用情况,使用iotop可以查看磁盘io使用情况 首先需要安装iftop和iotop: yum install iftop yum install iotop = ...
- 关于在ubuntu平台下使用apt-get命令下载速度太慢的问题解决
1. 进入设置,从哪进都一样找到就行. 2.选择软件与更新(Software and updates,英语估计是这个把) 点击下载自:这个下拉框,选中其它站点,选择镜像 选择阿里的或者搜狐的镜像,然后 ...
- Android测试:从零开始1——简介
参考文档:https://developer.android.com/training/testing/start/index.html 测试分类 使用android studio进行测试,首先需要先 ...
- Castle.MVC框架介绍
Castle.MVC目前还在Castle的Sandbox中,只是在源代码管理中有,还没有向外发布版本,这里介绍多时Web的MVC,和Castle的MonoRail相比较,这个MVC可以Asp.Net的 ...
- SQL系统函数——系统信息
1.查看信息1.1.查看编号和名称select @@SERVERNAME--SQL SERVER服务器的连接字符串,如:computername\instancenameselect @@SERVIC ...
- Connecting to Shares And Common Shares
Now that you have these shares, how do people use them? Assuming that you have a share called Apps o ...
- Keras之函数式(Functional)模型
函数式(Functional)模型 我们起初将Functional一词译作泛型,想要表达该类模型能够表达任意张量映射的含义,但表达的不是很精确,在Keras2里我们将这个词改移为“函数式”,函数式模型 ...