• 记录一些容易忘记的属性 -- UIView


      一个视图原来添加在某个父视图上,然后再将它添加到另外的一个视图上,这个视图会从原来的某个父视图中移除,添加到新的视图上。

      子视图对象指针存在父视图的subviews数组中,说明,一个视图可以有多个子视图

      视图间的层次关系:

        1.子视图覆盖父视图。同一视图的子视图之间,后添加的视图覆盖先添加的视图。

        2.假设self.window有红色和黄色子视图, 黄色视图在红色视图后添加,这个情况下,不管红色视图由多少子视图,都被会黄色视图覆盖。


        redView.clipsToBounds = YES; 

        文档解释:// When YES, content and subviews are clipped to the bounds of the view. Default is NO.

              //设置是否裁剪子视图,设置为YES,会将当前视图的子视图超出部分给裁剪掉

      yellowView.autoresizingMask = UIViewAutoresizingFlexibleWidth;

        //    UIViewAutoresizingNone    //默认情况,(视图)不变
        //    UIViewAutoresizingFlexibleLeftMargin //可变左边距
        //    UIViewAutoresizingFlexibleWidth       //可变宽度
        //    UIViewAutoresizingFlexibleRightMargin //可变右边距
        //    UIViewAutoresizingFlexibleTopMargin   //可变上边距
        //    UIViewAutoresizingFlexibleHeight      //可变高度
        //    UIViewAutoresizingFlexibleBottomMargin //可变下边距

        //把某一个子视图放到子视图中最上面的位子,调整位置后,在父视图的数组中的位置也发生变化。
        [self.window bringSubviewToFront:view1];

        //把某一个子视图放到视图的最后面
        [self.window sendSubviewToBack:view1];

        //把参数一的视图放到指定数组中的指定位置
        [self.window insertSubview:view3 atIndex:2];
        //把参数一的视图放到数组中指定视图的上面
        [self.window insertSubview:view3 aboveSubview:view1];
        //把参数一的视图放到数组中指定视图的下面
        [self.window insertSubview:view3 belowSubview:view1];
        //交换指定位置的两个视图的位置
        [self.window exchangeSubviewAtIndex:0 withSubviewAtIndex:2];

  • 相关阅读:
    不用轮子自己写滑动块
    let能否完全替代IIFE
    css3@media实现原理
    SQL 分组后获取每组中最大值
    如何在 JavaScript 中使用 C 程序
    响应式编程(Reactive Programming)(Rx)介绍
    图表(Chart & Graph)你真的用对了吗?
    JavaScript编码指南
    游戏心理学
    WannaCry结束了? 安专家注册域名掐断病毒传播
  • 原文地址:https://www.cnblogs.com/goodheart/p/3988711.html
Copyright © 2020-2023  润新知