iOS之UIView的用法

来源:互联网 发布:网管软件限速 编辑:程序博客网 时间:2024/06/01 11:47
一。UIView 三个作用  布局(视图树)   动画(显示动画、绘图)   事件传递


视图,大家在iPhone上看到的控件大部分都是UIView的子类。视图,通常是UIView的一个对象,表示屏幕上的一块矩形区域,同时处理该区域的绘制和触屏事件。

一个视图也可以作为其他视图的父视图,同时决定着这些子视图的位置和大小。

UIView类做了大量的工作去管理这些内部视图的关系。视图同时也是App中MVC模式中的View成分。




二。IOS坐标系统


iPhone的视图坐标系是以左上角为原点


每一个view的frame所使用的坐标系以它的父视图的左上角为原点


视图结构和相关函数




CGPoint point = CGPointMake(x,y); //位置


CGSize size = CGSizeMake(width,height); //大小


CGRect rect = CGRectMake(x,y,width,height); //位置和大小




三。Frame和Bounds


  Frame以其父视图为起点,得出它自己的位置信息Bounds即以iOS系统的坐标原点为起点,坐标是(0,0)


  Center表示视图中心点所在的位置,设置此属性可改变视图的位置当你设置了三者中的某一个的时候,其他两个的值会相应变化

*请注意:缺省情况下,视图的边框并不会
被父视图的边框裁剪。如果您希望让一个视图裁剪其子视图,需要将其clipsToBounds属性设置为YES。


四。创建UIView


创建视图UI有两种方式,xib文件和代码创建。


视图的层次结构


UIView层次结构可以理解为“视图树”—— view hierarchy


一个视图就是一个容器,当一个视图包含其他视图的时候,两个视图之间就建立了一个父子关系。被包含的视图被称为”子视图(subview)”,
包含的视图称为”父视图或超视图(superview)“从视觉上看,子视图隐藏了父视图的内容,设置透明属性可以看到父视图的内容。


每个父视图都有一个有序的数组存储着它的子视图,存储的顺序就会影响到每个子视图的显示效果,比如:两个兄弟视图重叠在一起,后来被加入的视图就出现在另外的上面
一个视图可以嵌入多个subview,但是只能有一个superview


五。UIView的常用方法


视图的常用方法


基本的添加和删除子视图
addSubview:                     // 添加子视图
insertSubview:atIndex:        // 视图插入到指定索引位置
insertSubview:aboveSubview:  // 视图插入指定视图之上
insertSubview:belowSubview:  // 视图插入指定视图之下
bringSubviewToFront:          // 把视图移动到最顶层
sendSubviewToBack:             // 把视图移动到最底层
exchangeSubviewAtIndex:withSubviewAtIndex //把两个索引对应的视图调换位置
removeFromSuperview   // 把视图从父视图中移除


当调用addSubview的时候,会对其进行保留,理解为retain一个对象就可以,当

调用removeFraomSuperview的时候,会对释放,也就是release。


六。UIView的常用属性


alpha               //透明度

backgroundColor   //背景颜色

subViews          //子视图集合

hidden             //是否隐藏

tag                //标签值

superview         //父视图

multipleTouchEnabled //是否开启多点触摸

userInteractionEnabled //是否响应触摸事件





0 0
原创粉丝点击