【Apple文档阅读笔记】View编程指南---View

  

View是用户交互的重中之重,因此也承载了不少的功能:
在布局和姿式图管理上:
管理自身的大小和父视图的关系,这是对上的
管理一系列的子视图,这是对下的
覆盖子视图的大小和位置
定位系统和最上面的window的点的转化app

在渲染和动画的层面来讲,View承载的功能主要是
渲染区域内的内容
更新本身的属性达到动画效果框架

事件处理也是View的一大功能
接收触摸事件
参与响应链条的工做
Q:这两个功能貌似紧密相关,接收时间,而后处理。ide

View的职责很明显是MVC中的V,管理建立,渲染可见的部分,处理布局和管理视图层次框架。还有内部的事件处理就在另外一个文档中Event handling guide for iOS,以后就会去看。布局

如何建立和配置视图对象?
简单说,两步走,先建立试图对象(这里有两种方式,代码建立和IB建立),而后整合进视图层次中来使用。动画

那么如何使用IB建立视图对象?
控件拖拖拖,而后对应一个View Controller。ui

代码如何建立视图对象呢?
先建立对象(分配内存和初始化),以后做为子视图添加对象

apple自己开放了一些属性来定制视图的外观,好比背景色,透明度,位置大小,内容模式。事件

建立和管理视图层次内存

实现一个自定义的View须要作哪些事情?
1. 定义一些合适的初始化方法
代码建立view,覆盖initwithFrame方法来自定义本身的初始化方法
从nib文件加载视图,覆盖initWithCoder方法,是因这个方法来初始化你的视图
2. 实现dealloc放啊来执行自定义数据的清理工做
3. 处理渲染,覆盖drawRect方法
4. 设置autoresizing属性来定义自动大小的行为
5. 若是说视图还有子视图的话,
在视图初始化过程当中建立子视图
在建立的时候这是autoresizingmask属性
若是子视图须要自定义布局,覆盖layoutSubviews方法和实现你的自动布局代码
6. 处理基于触摸的时间
添加手势管理:addGestureRecognizer
本身来处理触摸事件,就须要覆盖几个方法
touchesBegan:withEvent:
touchesMoved:withEvent:
touchesCancelled:withEvent:
touchesEnded:withEvent:
7. 也能够覆盖打印版本的方法,是的和屏幕显示的方法不一样文档

相关文章
相关标签/搜索