UIViewAutoResizing用法总结
![](https://img.haomeiwen.com/i1311714/f496c320aed8ed3c.png)
- UIViewAutoresizingNone:UIView的frame不会随着父视图的改变而改变;
- UIViewAutoresizingFlexibleLeftMargin:UIView距离父视图左边的间距是可变的,右边的间距保持不变;
- UIViewAutoresizingFlexibleRightMargin: UIView距离父视图右边的间距是可变的,左边的间距保持不变;
- UIViewAutoresizingFlexibleTopMargin:UIView距离父视图上边的间距是可变的,底部的距离保持不变;
- UIViewAutoresizingFlexibleBottomMargin:UIView距离父视图底部的距离是可变的,上部的距离保持不变;
- UIViewAutoresizingFlexibleWidth:UIView的宽度是可变的,距离父视图的左右边距不变;
- UIViewAutoresizingFlexibleHeight:UIView的高度是可变的,距离父视图的上下间距不变;
组合:
-
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin:UIView的宽度不变,距离父视图左右边距可变,但是左右边距的比例不变;
-
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin:UIView的高度不变,距离父视图上下边距可变,但是上下边距的比例不变;
-
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleRightMargin:UIView的宽高不变,距离父视图上下左右的间距会变,但上下边距比例不变,左右间距比例不变;
-
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleWidth:UIView的左边距和宽度可以改变,按原先的比例进行变化,右边距保持不变;
-
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleRightMargin:UIView距离父视图的左边距和右边距,UIView的宽度都可以改变,他们按照原来的比例进行改变;
-
UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight:UIView宽高可变,但距离父视图上下左右的距离不变。
UIView的autoresizingMask
要起作用要求父视图的autoresizesSubviews
是YES;