UIScrollViewDelegate
一.执行顺序:(scrollView加后面的)
willBeginDragging // 将要开始拖拽,手指已经放在view上并准备拖动的那一刻
DidScroll //只要view有滚动(不管是拖、拉、放大、缩小 等导致) 都会执行此函数---any offsetchanges
willEndDragging // 将要结束拖拽,手指已拖动过view并准备离开手指的那一刻 注意:当属性pagingEnabled为YES时此函数不被调用
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
(velocity: targetContentOffset: )
当 willEndDragging 方法中 velocity 为 CGPointZero(结束拖动时两个方向都没有速度)时,didEndDragging 中的 decelerate 为 NO,即没有减速过程,willBeginDecelerating 和 didEndDecelerating 也就不会被调用。反之,当 velocity 不为 CGPointZero 时,scroll view 会以 velocity 为初速度,减速直到 targetContentOffset。值得注意的是,这里的 targetContentOffset 是个指针,没错,你可以改变减速运动的目的地,这在一些效果的实现时十分有用,实例章节中会具体提到它的用法,并和其他实现方式作比较。
DidEndDragging // 已经结束拖拽,手指刚离开view的那一刻
DidScroll
willBeginDecelerating // view将要开始减速 view滑动之后有惯性
DidScroll
DidEndDecelerating // view已经停止滚动
UIScrollViewDelegate的更多相关文章
- UIScrollViewDelegate 方法调用
UIScrollViewDelegate 方法调用 /** 设置缩放的View, 初始化完之后调用此方法告诉scrollView 谁可以缩放操作, 然后进行布局 */ func viewForZoom ...
- UIScrollViewDelegate相关方法
UIScrollViewDelegate - (void)scrollViewDidScroll:(UIScrollView *)scrollView;//scrollview 滚动的时候调用该方法, ...
- iOS学习笔记——滚动视图(scrollView)
滚动视图:在根视图中添加UIScrollViewDelegate协议,声明一些对象属性 @interface BoViewController : UIViewController<UIScro ...
- 实现下来ScrollView放大轮播图
创建工程,创建一个UIScrollView属性,并遵循其协议: #define kWidth self.view.frame.size.width//屏幕宽 #define kHeight self. ...
- iOS开发系列--无限循环的图片浏览器
--UIKit之UIScrollView 概述 UIKit框架中有大量的控件供开发者使用,在iOS开发中不仅可以直接使用这些控件还可以在这些控件的基础上进行扩展打造自己的控件.在这个系列中如果每个控件 ...
- iOS 下拉刷新-上拉加载原理
前言 讲下拉刷新及上拉加载之前先给大家解释UIScrollView的几个属性 contentSize是UIScrollView可以滚动的区域. contentOfinset 苹果官方文档的解释是&qu ...
- IOS实现自动循环滚动广告--ScrollView的优化和封装
一.问题分析 在许多App中,我们都会见到循环滚动的视图,比如广告,其实想实现这个功能并不难,用ScrollView就可以轻松完成,但是在制作的过程中还存在几个小问题,如果能够正确的处理好这些小问题, ...
- UI第十七节——UIScrollView
// 实例化一个ScrollView UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:[[UIScreen main ...
- IOS UIWebView 下拉刷新功能的简单实现
1.运行效果图 2.swift 代码的实现 import UIKit class RefreshWebViewController: UIViewController,UIScrollViewDele ...
随机推荐
- 【Unity3D技巧】在Unity中使用事件/委托机制(event/delegate)进行GameObject之间的通信 (二) : 引入中间层NotificationCenter
作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 一对多的观察者模式机制有什么缺点? 想要查看 ...
- protobuf 数据解析的2种方法
方法1: message person{required int32 age = 1;required int32 userid = 2;optional string name = 3;} mess ...
- 一些鲜为人知却非常实用的数据结构 - Haippy
原文:http://www.udpwork.com/item/9932.html 作为程序猿(媛),你必须熟知一些常见的数据结构,比如栈.队列.字符串.链表.二叉树.哈希,但是除了这些常见的数据结构以 ...
- bootstrap初接触
Bootstrap 是最受欢迎的 HTML.CSS 和 JS 框架.(主要是结合HTML5 CSS3的样式, 基于jquery+Bootstrap 自带 12 种 jQuery 插件,扩展了功能,可以 ...
- jquery 复制DIV与相关事件
<div class="pages_img fix" name="fixpages"> <div class=& ...
- centos7编译安装pure-ftpd-1.0.42
一.下载 wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.gz 二.安装 tar xvf ...
- 5、Linux 系统基本文件管理
1.Linux系统目录结构 /etc ----> 配置文件 /boot ----> 引导分区/挂载点, boot loader 的静态链接文件,存放与Linux启动相关的程序 ...
- List与字符串转换
1.将list元素用单引号引起来:List<TransferFocusxfSummaryTop3> topList = getTransferFocusxfSummaryTop3(user ...
- FW开发代码规范---小任性(2)
三.空行 (1)在每个函数.结构体.枚举定义结束之后都要加空行. 在一个函数体内,逻辑密切相关的语句之间不加空行,其它地方应加空行分隔. struct st1 { - }; // 空行 enum { ...
- PL/SQL连接64位Oracle配置方法
问题原因: plsql developer无法连接64位oracle server的原因是,plsql是32位的,没有64位的版本,而oracle是64位,两者不兼容. 配置方法: 1.下载64位Or ...