只要是繼承於 UIView 的物件都會有 UIViewAutoresizing 這個屬性,它的作用在於設定該物件在畫面中的相對或是絕對坐標,以及相對或是絕對大小,透過 Interface Builder 設計介面時可以在 Size Inspector 屬性頁面內找到它,如下圖。
圖中的 Autosizing 中間的箭頭線段代表設定物件水平垂直的相對或是絕對大小,外圈的線段則是代表物件的相對或是絕對坐標,使用滑鼠點選這些線段就可以立刻在 Example 視窗中檢視結果。
當然我們也可以透過程式碼來設定設些參數,其設定方法如下。
[myView setAutoresizingMask:UIViewAutoresizingNone];
檢視上述程式碼,此 UIView 在畫面中是絕對位置並且也是絕對大小,不管畫面如何選轉或是縮放,此 UIView 都過固定出現在同一個坐標上並且大小變。
此外,關於 UIViewAutoresizing 其他的參數定義與它們分別代表的位置如下。
//UIView.h
enum {
UIViewAutoresizingNone = 0,
UIViewAutoresizingFlexibleLeftMargin = 1 << 0,
UIViewAutoresizingFlexibleWidth = 1 << 1,
UIViewAutoresizingFlexibleRightMargin = 1 << 2,
UIViewAutoresizingFlexibleTopMargin = 1 << 3,
UIViewAutoresizingFlexibleHeight = 1 << 4,
UIViewAutoresizingFlexibleBottomMargin = 1 << 5
};
typedef NSUInteger UIViewAutoresizing;
沒有留言:
張貼留言