一、 常见属性

  @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. SublimeText插件vue Syntax Highlight : vue语法高亮

    参考:http://www.cnblogs.com/cosnyang/p/6290950.html Vue.js 的单文件组件(*.vue)在 sublime 编辑器中是不被识别的.若要想高亮显示,需 ...

  2. vue2 数据交互 vue-resource

    1.安装vue-resource到项目中,找到当前项目 输入:npm install vue-resource --save 2.安装完毕后,在main.js中导入,如下所示: import  Vue ...

  3. [C#]关于Distinct与重写IEqualityComparer时得知道的二三事

    我们在想对一个可枚举的对象集合进行去重操作时,一般第一个想到的就是就是Linq的Distinct方法. 先定义一个类,然后使用Distinct方法去重 class Man { public int A ...

  4. css多行文本溢出显示省略号

    HTML: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <met ...

  5. <Android 基础(八)> Palette

    介绍 Palette, 英文翻译,调色板,意思比较接近,Google给它的定位应该是颜色萃取器. 看下Source Code Palette , A helper class to extract p ...

  6. mysql的三种索引

    MySQL中的索引分为3种: 1,主键索引:即用主键当唯一索引 2,常规索引:实现方式为B树和哈希表 3,全文索引:实现原理类似倒排索引,常用来查询字段中包含关键字 下面复习下B-TREE和hash- ...

  7. eclipse 上使用tomcat 启动项目,项目目录下无.class 文件

    摘要:在使用eclipse 启动taomcat时,项目报错,但将项目打成war包单独部署到tomcat时,则项目正常,通过对比两次部署文件发现,从eclipse直接启动tomcat时,部署到tomca ...

  8. Java I/O 工作机制(二) —— Java 的 I/O 的交互方式分析

    简介: BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善.  ...

  9. Java UUID Generator(JUG)

    UG 是一个纯 Java 的 UUID 生成器. UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的.通常平台会提供生成UUID的API.UUID按照开放软件基金 会 (OS ...

  10. IOS 读取xib到tabelView

    /**每一行显示怎样的ceLl*/ -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIn ...