iOS开发-控件基类:UIView

来源:互联网 发布:知微公司 编辑:程序博客网 时间:2024/06/05 09:26

在iOS开发中,所有的控件都是继承自UIView的,可以这么说,UIView是iOS开发中最纯洁的视图控件,下面列举一些它常用属性:

frame与bounds:都指的是控件的坐标和宽高,但是,frame表示的是相对于父控件的坐标,是以父控件为参考系的,bounds则是以自身为参考系的。他们都是一个结构体CGRect,坐标原点可能不同,但宽高的值是对应相等的

layer:即图层,我们之所以能在一个控件上看到各种颜色、文字,实质上都是由这个layer决定的,layer是QuartzCore框架下的一个CALayer对象,这里不深讲,用法以后再说

transform:这是二维层面的一个形变属性(当然,CALayer下也有一个transform属性,但通常是要实现三维效果才用的),它是框架CoreGraphics下的一个结构体,原型是

struct CGAffineTransform {

 CGFloat a, b, c, d;

 CGFloat tx, ty;

};

当然,还有backGroundColor等等其他属性,这里不多讲,都是比较简单的;


不过有几个重要的方法要提一下,一个是layoutSubViews,这个是当设置view的frame活着frame有变化的时候都会调用的,有时候,子控件的frame我们会在这个方法里设置;还有一个是drawRect方法,这个是当我们需要绘图的时候要实现的一个方法,通过调用setNeedsDisplay来启用,

UIView暂时说到这里,其他的以后再补充


0 0
原创粉丝点击