UIView详解

来源:互联网 发布:java 网络编程框架 编辑:程序博客网 时间:2024/06/05 07:50

UIView表示屏幕上的一块矩形区域,它在App中占有绝对重要的地位,因为IOS中几乎所有可视化控件都是UIView的子类。负责渲染区域的内容,并且响应该区域内发生的触摸事件


UIView的功能 1.管理矩形区域里的内容2.处理矩形区域中的事件3.子视图的管理 4.还能实现动画  UIView的子类也具有这些功能


下图就是视图的内层次

                                        

1)三个结构体 CGPoint、CGSize、CGRect

1.  CGPoint

struct CGPoint {  
  CGFloat x;  
  CGFloat y;  
};  

typedef struct CGPoint CGPoint;  
看到这个想必你已经懂了,不再解释。

2.CGSize

struct CGSize {  
  CGFloat width;  
  CGFloat height;  
};  

typedef struct CGSize CGSize;  
不解释。

3.CGRect

struct CGRect {  
  CGPoint origin;  //偏移是相对父视图的  
  CGSize size;  
};  
typedef struct CGRect CGRect;  
同样 不解释。

这三个结构体均在一个头文件里:CGGeometry.h

2)视图的最基本属性

frame和center都是相对于父视图的,bounds是相对于自身的


frame   是CGRect  frame的origin是相对于父视图的左上角原点(0,0)的位置,改变视图的frame会改变center

center  是CGPoint  指的就是整个视图的中心点,改变视图的center也会改变frame

bounds 是CGRect  是告诉子视图本视图的原点位置(通俗的说就是,子视图的frame的origin与父视图的bounds的origin的差,就是子视图相对于父视图左上角的位置,如果结果为负,则子视图在父视图外)

0 0