UIScrollView学习指南
--前言
笔者结合自己的工作经验,梳理关于UIScrollView究竟需要掌握哪些知识才算是一个好手。至于具体的实施方案,网上资源很多,自行了解吧。
--正文
1、涉及到滚动和放大的功能,优先考虑使用原生的scrollView。相比于自己使用手势和view封装一个,不如使用原生的scrollView。
2、毕竟从UIView到UIScrollView是一个很大的创举。熟悉并理解scrollView的关键属性,很重要。这些属性比如:
(1)frame、contentSize、contentOffSet、contentInSet、indicatorStyle、pagingEnabled、minimunZoomScale、maximunZoomScale等等。
(2)回弹机制
3、UIScrollViewDelegate--熟悉这些方法被触发的条件以及调用顺序。然后结合tableView,尝试理解:
(1)tableView中图片加载逻辑的优化
(2)分页的实现方式
(3)重用
(4)瀑布流
4、AutoLayout的使用
(1)对于像UILabel这类的“内容支撑”控件。AutoLayout可以不明确指定其size相关的约束。
(2)UIScrollView的子控件布局时。借鉴tableViewCell的做法,在scrollView和其他子空间之间增加一个“contentView”。
(3)使得scrollView的frame随着其contentSize变化。
5、ScrollView常用的使用场景
(1)导航栏半透明(随着scrollView的滚动渐变)
(2)scrollView中的某些控件悬停(类似于tableView的sectionView的悬停效果)
(3)下拉头部图片放大
(4)图片无限轮播(一般与小圆点一起使用)
(5)图片查看器(左右切换、双击放大、捏合缩放等功能)
(6)scrollView的嵌套(可以使用手势的作用对象,决定最上面的scrollView滚动,下面的scrollView保持不动)
(7)scrollView的下拉效果(iOS10以后已经增加“refreshControl”属性)
(8)将scrollView作为底层的容器
最新文章
- SQLServer地址搜索性能优化例子
- 利用xinetd进行时间同步
- (转)C#为什么要使用Invoke,它和BeginInvoke有什么区别
- linux kernel 字符设备详解
- JeeSite开发笔记
- GOOGLE影像地图
- Microsoft Office 2007 Professional Plus+ 正版密钥
- Android 内部存储相关的函数(getCacheDir,getDir, getFileStreamPath,getFilesDir,openFileInput, ...)
- 【Linux命令】Ubuntu14.04+QT5.2配置mysql
- Java中String类型的部分用法
- strcmp函数
- Codeforces785E - Anton and Permutation
- css的内容
- [CQOI2018]交错序列
- 使用pyinstaller打包python小程序(没有使用第三方模块)
- Uploadify导致Chrome频繁崩溃Crash
- SQL-2 查找入职员工时间排名倒数第三的员工所有信息
- Spark分析之Master、Worker以及Application三者之间如何建立连接
- Linux之查看文件大小和数目
- Perl6多线程1 Thread : new / run