在 UIView 中有一個(gè)autoresizingMask的屬性,它對應(yīng)的是一個(gè)枚舉的值(如下圖)蔽莱,屬性的意思就是自動(dòng)調(diào)整子控件與父控件中間的位置弟疆,寬高。
typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) {
UIViewAutoresizingNone = 0,
UIViewAutoresizingFlexibleLeftMargin = 1 << 0,
UIViewAutoresizingFlexibleWidth = 1 << 1,
UIViewAutoresizingFlexibleRightMargin = 1 << 2,
UIViewAutoresizingFlexibleTopMargin = 1 << 3,
UIViewAutoresizingFlexibleHeight = 1 << 4,
UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};
UIViewAutoresizingNone就是不自動(dòng)調(diào)整盗冷。
UIViewAutoresizingFlexibleLeftMargin 自動(dòng)調(diào)整與superView左邊的距離怠苔,保證與superView右邊的距離不變。
UIViewAutoresizingFlexibleRightMargin 自動(dòng)調(diào)整與superView的右邊距離仪糖,保證與superView左邊的距離不變柑司。
UIViewAutoresizingFlexibleTopMargin 自動(dòng)調(diào)整與superView頂部的距離,保證與superView底部的距離不變锅劝。
UIViewAutoresizingFlexibleBottomMargin 自動(dòng)調(diào)整與superView底部的距離攒驰,保證與superView頂部的距離不變。
UIViewAutoresizingFlexibleWidth 自動(dòng)調(diào)整自己的寬度故爵,保證與superView左邊和右邊的距離不變玻粪。
UIViewAutoresizingFlexibleHeight 自動(dòng)調(diào)整自己的高度,保證與superView頂部和底部的距離不變。
例如:UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleRightMargin 自動(dòng)調(diào)整與superView左邊的距離劲室,保證與左邊的距離和右邊的距離和原來距左邊和右邊的距離的比例不變伦仍。比如原來距離為20,30很洋,調(diào)整后的距離應(yīng)為68充蓝,102,即68/20=102/30喉磁。
其它的組合類似谓苟。