--前言

  笔者结合自己的工作经验,梳理关于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作为底层的容器

UIScrollView学习指南的更多相关文章

  1. Civil 3D API二次开发学习指南

    Civil 3D构建于AutoCAD 和 Map 3D之上,在学习Civil 3D API二次开发之前,您至少需要了解AutoCAD API的二次开发,你可以参考AutoCAD .NET API二次开 ...

  2. 笔记——shell脚本学习指南

    <shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...

  3. 《Spring MVC学习指南》怎么样?答:书名具有很大的欺骗性

    2016年6月21日 最近,因为工作需要,我从网上买了一本<Spring MVC学习指南>,ISBN编号: 978-7-115-38639-7,定价:49.00元.此书是[美]Paul D ...

  4. [go语言学习指南]

    内部分享,根据自己的经验,收集汇总的go语言学习指南. 适合新手入门. 可以通过这里进行下载.

  5. Oracle学习指南

    Oracle学习指南 你走的那天,我决定不落泪,迎着风撑着眼帘用力不眨眼 创建数据库.创建用户.创建表空间.创建表.插入数据..... 1.用系统用户登录,任选系统用户 代码: >>sql ...

  6. 推荐10个很棒的AngularJS学习指南

    AngularJS 是非常棒的JS框架,能够创建功能强大,动态功能的Web app.AngularJS自2009发布以来,已经广泛应用于Web 开发中.但是对想要学习Angular JS 的人而言,只 ...

  7. 项目管理之道--纪我的新书《PMP项目管理认证学习指南(第4版)》出版并预祝大卖!

    新年伊始,我最新的项目管理书籍——<PMP项目管理认证学习指南(第4版)>也出版了,真是新年新气象啊!翻译英文书籍是一件任重道远的工作,除了要具备扎实的基本功,熟悉相关的领域外,还需要细致 ...

  8. Gulp学习指南之CSS合并、压缩与MD5命名及路径替换(转载)

    本文转载自: Gulp学习指南之CSS合并.压缩与MD5命名及路径替换

  9. Android Wear(手表)开发 - 学习指南

    版权声明:欢迎自由转载-非商用-非衍生-保持署名.作者:Benhero,博客地址:http://www.cnblogs.com/benhero/ Android Wear开发 - 学习指南 http: ...

随机推荐

  1. 创建Vue项目及其内容分析

    利用 vue 脚手架开发企业级应用     # 全局安装 vue-cli     npm install --global vue-cli    # 创建一个基于 webpack 模板的新项目     ...

  2. 动手实现CapsNet系列——2 实现(未完待续)

    执行后返回如下信息: Loading complete. Training started! [epoch 0][iter 0] loss: 0.8082, acc: 14.0000% (14/100 ...

  3. vue 实现todolist,包含添加,删除,统计,清空,隐藏功能

    vue 实现todolist,包含添加,删除,统计,清空,隐藏功能 添加:生成列表结构(v-for+数组).获取用户输入(v-model).通过回车新增数据(v-on+.enter) 删除:点击删除指 ...

  4. PowerDesigner--comment和name互相复制

    1.comment复制到name 脚本代码: Option Explicit ValidationMode = True InteractiveMode = im_Batch Dim mdl Set ...

  5. jquery实现登录后右下角弹窗提醒(附带简单样式)

    页面代码如下:   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  6. DOMException: Failed to execute 'open' on 'XMLHttpRequest': Invalid URL 未能在“xmlhttpRequest”上执行“open”:无效的URL。

    出现这个报错主要是baseurl:http://192.168.*.*/后面的(/)或是请求里面的url:/user/login中前面的(/)有一个漏掉了,导致合成的路径不完整,所以报错:无效的URL

  7. Win下PHP5.6版本安装redis扩展

    首先说一下自己的环境啥的,我用的是phpstudy,其实没啥大用,就是看你的php版本啥的 1.运行phpinfo(),查看php的信息,php的位数和扩展信息,和要下载的扩展文件信息有关, 2.下载 ...

  8. vs2013编译soui并创建一个项目

    1.soui.10.sln改为soui.13.sln 2.用nodepad++打开soui.13.sln,作如下修改 注:第一行我是改为13.00,编译后似乎自己变为12.00了 编译结果: 注:这是 ...

  9. package.json中的script选项作用

    npm不仅可以用于模块管理,还可以用于执行脚本.package.json文件有一个scripts字段,可以用于指定脚本命令,供npm直接调用. 接下来做个简单测试: (1)在项目根目录下创建demo. ...

  10. Oracle 设置NLS_CHARACTERSET字符集

    Oracle 设置NLS_CHARACTERSET字符集 sqlplus "/ as sysdba"SQL> SHUTDOWN IMMEDIATE;SQL> START ...