zoukankan      html  css  js  c++  java
  • 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作为底层的容器

  • 相关阅读:
    XXX系统讨论
    问题账户需求分析
    2017年秋季个人阅读计划
    《软件工程概论》的评价
    第二阶段Day10
    每周总结16
    假期学习记录13(ImageView实现动态加载网络图片)
    假期学习记录12(android与web服务器之间的list/json数组的消息传递)
    假期学习记录11(NavigationView点击事件无效)
    假期学习记录10(自定义AlertDialog,按钮关闭AlertDialog)
  • 原文地址:https://www.cnblogs.com/cchHers/p/10135799.html
Copyright © 2011-2022 走看看