iOS常用控件-UIScrollView
一、 常见属性
@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的更多相关文章
- Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例
看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...
- [ios2] iOS常用控件尺寸大集合 【转】
元素控件 尺寸(PTS) Window(含状态栏) 320 x 480 Status Bar的高度 20 Navigation Bar的高度 44 含Prompt的Navigation Bar的高度 ...
- iOS常用控件尺寸大集合
元素控件 尺寸(pts) Window(含状态栏) 320 x 480 Status Bar的高度 20 Navigation Bar的高度 44 含Prompt的Navigation Bar的高度 ...
- iOS常用控件-UITableViewCell
一. 封装cell: 1.加载xib文件的两种方式 <方式1> (NewsCell是xib文件的名称) NSArray *objects = [[NSBundle mainBundle] ...
- 【Demo 0006】iOS常用控件
本章学习要点 1. 了解iOS中控件继承关系: 2. 掌握UIControl基础知识; 3. 掌握UIButton基本用法: 4. 掌握UILa ...
- 【转】ios的控件UIScrollView的位置定位---------逐渐积累
原文网址:http://blog.csdn.net/z343929897/article/details/8106408 UIScrollView的判断位置的属性如下: contentSize:C ...
- iOS 常用控件集合 完整项目
[Swift]高仿 爱范儿3.0 http://www.code4app.com/forum.php?mod=viewthread&tid=10053&page=1&extra ...
- iOS 常用控件 参数
1.StatusBar 20px 2.TableViewCell 44px 3.TabBar 49px 4.NavigationBar 44px 5.NaviBarIcon 20*20px 6.Tab ...
- iOS开发-UI (一)常用控件
从这里开始是UI篇 知识点: 1.常用IOS基本控件 2.UITouch ======================= 常用基本控件 1.UISegmentedControl:分段控制器 1)创建方 ...
随机推荐
- SpringBoot 项目打包后获取不到resource下资源的解决
SpringBoot 项目打包后获取不到resource下资源的解决 在项目中有几个文件需要下载,然后不想暴露真实路径,又没有CDN,便决定使用接口的方式来获取文件.最初的时候使用了传统的方法来获取文 ...
- React 内部属性与函数
constructor 构造函数,在创建组件的时候调用一次. 例子: class TodoList extends React.Component { constructor(props, conte ...
- thinkphp中怎么判断是手机端访问还是pc端访问?
function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) r ...
- 有意思的jsonp
<style> body{margin: 0;} ul{margin: 0;padding: 0;list-style: none;} a{color:inherit;text-decor ...
- easyUI 节点树选择
定义: <input id="treeFFatherId" name="treeFFatherId" value="" style=& ...
- 关于Java虚拟机内存原型的基本知识
Java虚拟机内存原型的六个部分: 1.寄存器:我们在程序中无法控制 2.栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 3.堆:存放用new产生的数据 4.静态域:存放在 ...
- 概念:详细讲解url和路由概念
例如:一个网址为 http://www.abc.com/aa 定义:/aa = bb/cc/dd 那么:http://www.abc.com/aa就是一个url,那么我们可以得出:网址=url 而当我 ...
- JAX-WS @WebParam自定义参数名称无效
在使用myeclipse 自动对service方法类进行创建webservice服务时,默认创建参数命名都是arg0-9 这样就导致生成的xml配置文件命名不规范,需要对参数名称进行修改: myecl ...
- leetcode: 链表2
1. copy-list-with-random-pointer(拷贝一个带随机指针的链表) A linked list is given such that each node contains a ...
- vuejs父子组件的数据传递
在vue中,父组件往子组件传递参数都是通过属性的形式来传递的 <div id='root'> <counter :count = '1'></counter> &l ...