7--UIView

作者: 肥咕咕 | 来源:发表于2016-08-11 17:01 被阅读47次

    大纲:

    创建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

          本文链接:https://www.haomeiwen.com/subject/fyrssttx.html