如果子view是auto layout, 则会自动跟着父view变化,不需要相关设置
如果子view是frame布局,不管父view是frame布局还是auto layout布局,都需要相关设置才能跟着变化
父view需要设置autoresizesSubviews
, autoresizesSubviews
默认是true
,可以不用设置
子view需要设置autoresizingMask
属性
//这个常量如果被设置,视图将不进行自动尺寸调整。
UIViewAutoresizingNone
//这个常量如果被设置,视图的高度将和父视图的高度一起成比例变化。否则,视图的高度将保持不变。
UIViewAutoresizingFlexibleHeight
//这个常量如果被设置,视图的宽度将和父视图的宽度一起成比例变化。否则,视图的宽度将保持不变。
UIViewAutoresizingFlexibleWidth
//这个常量如果被设置,视图的左边界将随着父视图宽度的变化而按比例进行调整。否则,视图和其父视图的左边界的相对位置将保持不变。
UIViewAutoresizingFlexibleLeftMargin
//这个常量如果被设置,视图的右边界将随着父视图宽度的变化而按比例进行调整。否则,视图和其父视图的右边界的相对位置将保持不变。
UIViewAutoresizingFlexibleRightMargin
//这个常量如果被设置,视图的底边界将随着父视图高度的变化而按比例进行调整。否则,视图和其父视图的底边界的相对位置将保持不变。
UIViewAutoresizingFlexibleBottomMargin
//这个常量如果被设置,视图的上边界将随着父视图高度的变化而按比例进行调整。否则,视图和其父视图的上边界的相对位置将保持不变。
UIViewAutoresizingFlexibleTopMargin