layoutSubviews

//1.layoutSubViews在以下情况下会被调用:

(1)inti初始化不会触发layoutSubViews,但是当用initWIthFrame进行初始化时,当rect的值不为CGRectZero时,也会触发。

(2)addSubview会触发layoutSubviews.

(3)设置view的frame时会触发layoutSubviews,当然前提是Frame得值前后发生了变化。

(4)滚动一个UIScrollView会触发layoutSubviews

(5)旋转Screen会触发父类UIView上得layoutSubviews事件

(6)改变一个UIView大小的时候也会触发UIView上得layoutSubViews事件

//2.注意:调用layoutSubViews,也需要调用它的父类方法,即:

[self layoutSubviews];

传说如果不调用的话会出现奇怪的问题。

//3.现在提供继承与UIView的类的.h和.m中的代码(TestView)

#import<UIKit/UIKit.h>

@interface TestView:UIView

@end

/////////////////////////////////////////////////////////

#import "TestView.h"

@implemention TestView

- (instancetype)initWithFrame:(CGRect)frame

{
        self = [super initWithFrame:frame];
        
        if(self)
        {
            
        }
        return self;
}
- (void)layoutSubviews
{
     [super layoutSubViews];
}



你可能感兴趣的:(layoutSubviews)