2011-09-07 51 views

回答

21

是的,如果您不想手動調整視圖大小,通常需要進行設置。請注意,它對於子視圖(即那些不佔用整個屏幕的視圖)而非應用程序的主視圖最爲有用。

視圖通常可能需要調整,如果:

  • 設備旋轉
  • 一個額外的視圖(比方說,廣告)被添加到視圖中,所以現有的子視圖具有較少的可用空間。

例如,假設您有一個包含兩個按鈕的視圖,一個位於左上角,另一個位於右上角。爲了使視圖從縱向轉換爲橫向時按鈕變寬,您需要將FlexibleLeftMargin設置爲右側按鈕,將FlexibleRightMargin設置爲左側按鈕。

編輯:autoresizingMask也是第一件要注意的事情,如果您在旋轉設備或添加新的子視圖時看到怪異的洞或重疊。通常情況下,這些子視圖掩碼的適當設置可以讓你在兩個方向都能看到漂亮的視圖,而無需手動配置子視圖 - 但通常需要進行一些試驗。

編輯2:(因爲這仍然收集upvotes)自動調整掩碼現在大多被「自動佈局」取代,它允許對視圖的大小和位置進行更靈活的約束。這就是說,translatesAutoresizingMaskIntoConstraints對於動態添加的視圖仍然有用。

+4

不要忘了雙高「通話中」狀態欄上海華盈的變化重新調整!您可以通過錄制語音備忘錄並切換到您的應用程序來輕鬆地複製此內容。 –

4

的目的是,正確的UIView移動,當它是由於調整大小,方位的變化,呈現出的tableview細胞等的編輯控制