ios---scrollview用法总结
一、使用步骤:
1.添加子组件到scrollview //必要步骤
2.设置clipsToBounds来确定超出范围是否被剪裁 (默认yes)
self.scrolltest.clipsToBounds=YES;
3.设置滚动范围 。 //必要步骤
(这里的滚动范围是设置的contentsize宽高减去scrollview的宽高,所以当contentsize宽高小于等于scrollview的宽高的时候,是不可滚动的)
scrollview.contentSize=CGSizeMake(, )
二、scrollview不可滚动的原因
1.没有正确设置scrollview.contentSize
2..scrollEnabled属性的设置(默认为yes) self.scrolltest.scrollEnabled=NO;
3.userInteractionEnabled属性来设置是否可以和用户交互 self.scrolltest.userInteractionEnabled=NO;
scrollEnabled和userInteractionEnabled的区别:
scrollEnabled只能决定是否能滚动;
userInteractionEnabled 影响滚动 。 事件 已经scrollview子组件的所有事件
三、scrollview基本属性
1.是否有弹簧效果
self.scrollview.bounces=No; (默认是yes)
self.scrollview.alwaysBounceHorizontal //水平
self.scrollview.alwaysBounceVertical //垂直
ps:可不可以滚动和有没有弹簧效果是不想关的
2.是否显示滚动条
showsVerticalScrollIndicator; //垂直滚动条
showsHorizontalScrollIndicator; //水平滚动条
- scrollview的子控件 scrollview.subviews
ps:scrollview的子组件中默认有两个滚动条组件 。
4.设置内容的偏移量
scrollview.contentoffset=cgpoinntmake(x,y)
5.cgpoint 属性的用法
cgpoint offset=self.scrollview.contentoffset; //第一步取出属性
offset.x=12; //设置属性
offset.y=13;
self.scrollview.contentoffset=offset; //赋值属性
6.设置内边距
self.scrollview.contentInset=UIEdgeInsetsMake(10, 20, 30, 40);
四、scrollview代理 (其方法不是必须实现的)
步骤:
1、遵守协议
2.设置代理
3.方法实现
(1) scrollview滚动过程中,自动调用的方法;(惯性滚动也会调用)
-(void)scrollViewDidScroll:(UIScrollView *)scrollView;
(2) scrollview 将要滚动的时候调用
-(void)scrollViewWillBeginDragging:(UIScrollView )scrollView;
(3)scrollview将要停止滚动时,调用
-(void)scrollViewWillEndDragging:(UIScrollView )scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint )targetContentOffset
(4)scrollview 已经停止滚动时,调用
-(void)scrollViewDidEndDragging:(UIScrollView )scrollView willDecelerate:(BOOL)decelerate;
(5)scrollview滚动减速完毕后,调用 。 (ps:并不是每次拖拽都会有减速情况;所以如果要判断scrollview是否停止滚动,可以用scrollViewDidEndDecelerating,scrollViewDidEndDragging一起使用来判断)
-(void)scrollViewDidEndDecelerating:(UIScrollView )scrollView;
(6)设置放大于缩小
1.设置scrollview的代理
2.实现如下方法
-(UIView )viewForZoomingInScrollView:(UIScrollView )scrollView{
return self.imageview;
}
3.设置scrollview放大缩小的最大最小值
scroll.maximumZoomScale=2.0;
scroll.minimumZoomScale=0.5;
(7)正在所发过程中调用的方法
-(void)scrollViewDidZoom:(UIScrollview )scorllview;
五、scrollview . 分页功能
scrollview.pagingEnabled=YES; //默认是no
ios---scrollview用法总结的更多相关文章
- IOS NSInvocation用法简介
IOS NSInvocation用法简介 2012-10-25 19:59 来源:博客园 作者:csj007523 字号:T|T [摘要]在 iOS中可以直接调用某个对象的消息方式有两种,其中一种就是 ...
- Android ScrollView用法
Android ScrollView用法 今天试着使用了一下Android的滚轮,以下是一个小小的测试,读取测试文件,主要是使用scrollTo函数和getScrollY(),程序点击BUTTON按钮 ...
- ios scrollView代理的用法
// // ZQRViewController.m // 03-图片缩放 // // Created by apple on 17-08-25. // #import "ZQRViewCon ...
- iOS scrollview循环播放加缩放
前些日子一直在研究3d的框架没有时间写博客,不过最后需求改了,也没研究出个啥.这段时间出了新的需求,需要循环播放图片,并且滑动的时候中间的图片有缩放的效果.刚开始想在网上搜索,不过并没有找到合适的de ...
- scrollView用法
在这里记下UIScrollView的用法,一来防止自己忘记,而来再通过这个回顾一下,发现一些新细节. UIScrollView的主要问题在布局上,我现在只用到了内容大小固定额也就是不是tableVie ...
- IOS UIButton用法详解
这段代码动态的创建了一个UIButton,并且把相关常用的属性都列举了.希望对大家有用. //这里创建一个圆角矩形的按钮UIButton *button1 = [UIButton buttonWi ...
- IOS ScrollView放大缩小点击位置并居中
项目中的一个优化案例,提升用户体验,对地铁线路图点击放大.缩小,并且点击位置居中: 正常ScrollView 我们点击某一点比如屏幕右侧,想要点的位置向左移动到中心位置,很简单只有算出该点位置距中心位 ...
- iOS - NSError用法规范
iphone跬步之--错误信息 NSError 一.获取系统的错误信息 比如移动文件时,获取文件操作错误: NSError *e = nil;[[NSFileManager defaultMana ...
- [ios]scrollView实现移动与缩放
实现滑动 1.在viewDidLoad中对scrollview的contentSize属性赋值 告诉他滑动范围. 实现缩放 1.在storyboard的scrollview的attribute标签中设 ...
- Android(java)学习笔记110:ScrollView用法
理论部分 1.ScrollView和HorizontalScrollView是为控件或者布局添加滚动条 2.上述两个控件只能有一个孩子,但是它并不是传统意义上的容器 3.上述两个控件可以互相嵌套 4. ...
随机推荐
- Percona-XtraDB-Cluster 5.7版本(PXC)集群部署
PXC(Percona-XtraDB-Cluster)5.7版本集群部署 Centos 7.3系统部署Mysql 集群 PXC三个节点分别执行和安装(1)配置hosts cat /etc/hosts1 ...
- 【时区问题】SpringBoot+mybatis查询mysql的datetime类型数据时间差14小时
[时区问题]MyBatis查询MySQL的datetime类型数据时间差14小时 故障解决方式 与数据库连接时,定义时区,避免mybatis框架从mysql获取时区.在连接上加上 serverTime ...
- 基于 WebSocket 的聊天和大文件上传(有进度提示)完美实现
大家好,好久没有写文章了,当然不是不想写,主要是工作太忙,公司有没有网络环境,不让上网,所以写的就少了.今天是2019年的最后一天,明天就要开始新的一年,当然也希望自己有一个新的开始.在2019年的最 ...
- Acunetix 11 配置详解
Acunetix 扫描配置 Full Scan– 使用Full Scan来发起一个扫描的话,Acunetix会检查所有可能得安全漏洞. High Rish Vulnerabilities–这个扫描选项 ...
- 「UVA1185」Big Number 解题报告
UVA1185 Big Number In many applications very large integers numbers are required. Some of these appl ...
- 基于GMC/umat的复合材料宏细观渐近损伤分析(一)
近期在开展基于GMC/umat的复合材料宏细观渐近损伤分析,一些技术细节分享如下: 1.理论基础 针对连续纤维增强复合材料,可以通过离散化获得如下的模型: (a)(b)(c) 图1 连续纤维增强复合材 ...
- Windows 7 + Tiny Linux 4.19 + XFS + Vmware Workstation 15 (PRO) 下篇dockerの奥义
美好的事物总是来自不易,而我是一个docker新手 从以上开场,请各位follow me站在一个初学者的角度,一步一步用最简单的视角审视docker和它的真实存在 上篇预告:Windows 7 + T ...
- Netty 的基本简单实例【服务端-客户端通信】
Netty是建立在NIO基础之上,Netty在NIO之上又提供了更高层次的抽象. 在Netty里面,Accept连接可以使用单独的线程池去处理,读写操作又是另外的线程池来处理. Accept连接和读写 ...
- 简单的c语言程序
我猜大部分人第一门掌握的语言是c语言吧(我第一门学的是python). 在接下来的文章里我会逐步的介绍有关自己对c语言的理解,希望对一些小伙伴有帮助,有哪里有错误希望大佬指出. 首先这是第一个c语言程 ...
- Java 集合源代码——ArrayList
(1)可以查看大佬们的 详细源码解析 : 连接地址为 : https://blog.csdn.net/zhumingyuan111/article/details/78884746 (2) Array ...