7--UIView

大纲:

创建View

View的基本设置(位置,大小,背景颜色,透明度,Center,Bound,Tag)

设置用户交互

View的相互嵌套

多个View的层次切换(置顶,置底,获取所有子控件,获取父控件,隐藏视图,插入视图,交换视图)

开发小技巧

一、创建View

//创建View
    UIView * view = [[UIView alloc]init];

二、View的基本设置(位置,大小,背景颜色,透明度,Center,Bound,Tag)

//设置位置和大小
    view.frame = CGRectMake(0, 0, 320, 480);
//设置背景颜色
    [view setBackgroundColor:[UIColor yellowColor]];
//设置透明度
    [view setAlpha:0.5];
//设置视图的中心点的位置(放在谁上面,谁就是参考物!)
    view.center = CGPointMake(0, 200);
//只可以设置大小,不管位置
    view.bounds = CGRectMake(0, 0, 320, 480);
//设置Tag
    [view setTag:100];

三、设置用户交互

//控件是否响应用户的交互 userInteractionEnabled
//注意!子控件的是否可以交互,是跟父控件一致的(如果父控件没有开启用户交互,那在其上的子控件都没有交互的能力)
//UILabel 和 UIImageView 默认是不响应
//UIView  和 UIButton    默认是响应
    button.userInteractionEnabled = YES;

四、View的相互嵌套

//UIView的相互嵌套
//方便统一管理 subView
//subView 的坐标是相对 superView
    [view addSubview:button];

五、多个View的层次切换(置顶,置底,获取所有子控件,获取父控件,隐藏视图,插入视图,交换视图)

//默认 越早加入的,层次越低
    [self.window addSubview:view1];
    [self.window addSubview:view2];
    [self.window addSubview:view3];
//将View放到“当前”的最顶层
    [self.window bringSubviewToFront:view1];
//将View放到“当前”的最底层
    [self.window sendSubviewToBack:view1];
   
//获取一个View中的所有subViews
    NSArray * subArr = [self.window subviews];
//获取superView
    UIView * superView = self.window.superview;
//隐藏一个视图
    view3.hidden = NO;
//插入视图
//放在xxView的上面
    [self.window insertSubview:view4 aboveSubview:view3];
//View的视图Index从0开始(最底层)
    [self.window insertSubview:view4 atIndex:1];
//放在xxView的下面
    [self.window insertSubview:view4 belowSubview:view2];
//交换视图
    [self.window exchangeSubviewAtIndex:0 withSubviewAtIndex:1];

六、开发小技巧

//善用View的嵌套,方便统一管理加在其之上的所有视图
//(隐藏视图)跟(透明度==0)是有区别的,慎用(视图隐藏后,可以操作后面的视图,可是透明的话就不一定)
//子控件的用户交互性是跟父控件一致,小心使用
//注意,UIView不能作为属性使用,会出问题!!

你可能感兴趣的:(7--UIView)