layoutSubviews方法的使用

作者: 夜之海澜 | 来源:发表于2019-10-14 16:05 被阅读0次

    我们都知道layoutSubviews方法是UIView的扩展类中的一个方法,用于子视图的布局。顾名思义,该方法在自定义view中直接重写即可,在一定条件触发下会调用,那么在都是在哪些条件下会被触发呢?下面将进行一一举例说明。为了演示,先自定义一个简单的view,其代码如下:

    //自定义一个简单的view
    #import "CustomView.h"
    @implementation CustomView
    - (void)layoutSubviews {
         NSLog(@"进入方法layoutSubviews");
    }
    @end
    
    
    • addSubview 添加到某个父view上时

      image.png
    • init初始化不会执行,但是用initWithFrame初始化成一个frame不为CGRectZero且addSubview时,会触发两次,不add一次也不会执行

    image.png
    • 设置view的Frame会触发layoutSubviews,前提是frame的值设置前后发生了变化

    image.png
    • view的父试图是scrollview,滚动时候会调用layoutSubviews,下面以tableview和cell的关系进行举例演示

    image.png

    相关文章

      网友评论

        本文标题:layoutSubviews方法的使用

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