一、 常见属性

  @property (nonatomic) CGPoint contentOffset;                      //记录UIScrollView滚动的位置
  @property (nonatomic) CGSize contentSize;                          // 内容尺寸 (能滚动的范围)
  @property (nonatomic) UIEdgeInsets contentInset;                // 额外增加的滚动区域 (在上下左右4个边缘)
  @property (nonatomic, assign) id<UIScrollViewDelegate> delegate;
  @property (nonatomic) BOOL bounces;                                  // 是否有弹簧效果
  @property (nonatomic) BOOL showsHorizontalScrollIndicator;  // 是否显示水平滚动条
  @property (nonatomic) BOOL showsVerticalScrollIndicator;      // 是否显示垂直滚动条

  //重点掌握 contentSize、contentOffset、delegate

二、捏合手势缩放

  1. 缩放原理详解
    1> 当用户尝试缩放UIScrollView的时候,UIScrollView会尝试向他的delegate (代理对象) 发送一条消息, 询问要缩放哪一个子控件。
    2> 换一种说法,也就是说,UIScrollView会尝试调用delegate的某个方法,询问要缩放的是哪一个子控件,并且该方法的返回值就是需要缩放的子控件。

  2. 缩放原理总结
    1> UIScrollView先设置delegate对象
    2> UIScrollView必须知道delegate是通过哪个方法返回需要缩放的子控件,delegate必须实现那个返回需要缩放的子控件的方法。
    3> UIScrollView要跟delegate对象协商好:用哪一个方法返回需要缩放的子控件
    4> 那个返回需要缩放的子控件的方法就是:

    - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView;

  3.缩放的一般实现步骤 (比如缩放UIScrollView内部的UIImageView)
    1> 设置UIScrollView的delegate为控制器 (self)
    2> 控制器遵守UIScrollViewDelegate协议 <UIScrollViewDelegate>
    3> 控制器实现 - (UIView *)viewForZoomingInScrollView:方法, 返回需要缩放的子控件
    4> 设置最大和最小缩放比例

iOS常用控件-UIScrollView的更多相关文章

  1. Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例

    看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...

  2. [ios2] iOS常用控件尺寸大集合 【转】

    元素控件 尺寸(PTS) Window(含状态栏) 320 x 480 Status Bar的高度 20 Navigation Bar的高度 44 含Prompt的Navigation Bar的高度 ...

  3. iOS常用控件尺寸大集合

    元素控件 尺寸(pts) Window(含状态栏) 320 x 480 Status Bar的高度 20 Navigation Bar的高度 44 含Prompt的Navigation Bar的高度 ...

  4. iOS常用控件-UITableViewCell

    一. 封装cell: 1.加载xib文件的两种方式 <方式1> (NewsCell是xib文件的名称) NSArray *objects = [[NSBundle mainBundle] ...

  5. 【Demo 0006】iOS常用控件

    本章学习要点       1.  了解iOS中控件继承关系:       2.  掌握UIControl基础知识;       3.  掌握UIButton基本用法:       4.  掌握UILa ...

  6. 【转】ios的控件UIScrollView的位置定位---------逐渐积累

    原文网址:http://blog.csdn.net/z343929897/article/details/8106408 UIScrollView的判断位置的属性如下:   contentSize:C ...

  7. iOS 常用控件集合 完整项目

    [Swift]高仿 爱范儿3.0 http://www.code4app.com/forum.php?mod=viewthread&tid=10053&page=1&extra ...

  8. iOS 常用控件 参数

    1.StatusBar 20px 2.TableViewCell 44px 3.TabBar 49px 4.NavigationBar 44px 5.NaviBarIcon 20*20px 6.Tab ...

  9. iOS开发-UI (一)常用控件

    从这里开始是UI篇 知识点: 1.常用IOS基本控件 2.UITouch ======================= 常用基本控件 1.UISegmentedControl:分段控制器 1)创建方 ...

随机推荐

  1. jsp---tomcat===》》内置对象

    1.内置对象:    request: 方法:getParameter("txtName"):获取和页面上的name属性对象的value值       返回String       ...

  2. python反爬之懒加载

    # 在平时的爬虫中,如果遇到没有局部刷新,没有字体加密,右键检查也能看到清晰的数据,但是按照已经制定好的解析规则进行解析时,会返回空数据,这是为什么呢,这时可以在网页右键查看一下网页源代码,可以发现, ...

  3. 认识less和webstrom的less配置

    认识less和webstrom的less配置 今天完成的事情: 首先第一件事情是,整理一下常用的颜色摄取 #F1F1F1 google的设置页面的body的背景颜色 #FFF 为google的内容块的 ...

  4. 详解HTML中的表单元素

    代码详讲: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" c ...

  5. [原创] Debian9上配置软件阵列

    序言 软阵列是用软件实现的磁盘阵列. 准备工作 1. 更新系统 没啥,就他喵想用个最新的. apt update && apt upgrade 2. 安装mdadm 如果系统没有自带m ...

  6. 聪明的Azure CDN,帮你找到云端捷径

    你知道吗?身处上海和纽约的两个用户同时通过网络收看“春晚”直播,纽约播放得可能比上海还要更流畅,这当然不是因为纽约距离北京的直播机房更近或者网速更快,而是因为大年夜在大洋彼岸围观“春晚”的观众相对较少 ...

  7. 关于java中的hashcode和equals方法原理

    关于java中的hashcode和equals方法原理 1.介绍 java编程思想和很多资料都会对自定义javabean要求必须重写hashcode和equals方法,但并没有清晰给出为何重写此两个方 ...

  8. ansible安装php

    环境:Centos 7.x 独立php-fpm.conf配置文件 [root@master playbook]# tree php php ├── php-fpm.conf └── php.yml p ...

  9. Node.js-ReferenceError: _filename is not defined

    简直不要被坑得太惨!!!你能?看出来这前面是两根下划线!两根下划线!两根下划线!太尴尬了~找了半天原因居然是这个!

  10. ubuntu16.04安装中文输入法(转)

    转自: https://zhidao.baidu.com/question/619127469641961052.html ubuntu没有预装中文输入法,需要自己安装 sudo apt instal ...