我正在創建一個通用的應用程序。現在我想在屏幕上放置兩個按鈕:Autolayout設計適應iPhone 3.5英寸和iPhone 4英寸屏幕尺寸
我用自動佈局嘗試過和Interface Builder(iOS版設計完全相同),但我只設法適合在一個屏幕尺寸的按鈕(如3.5英寸顯示屏)。因此,我將按鈕的大小和間距設置爲頂部(一個位於超級視圖頂部,另一個位於頂部按鈕底部)。
但是有沒有一種方法適應屏幕尺寸?例如。按鈕的寬度是視圖寬度減去一定的差距。或者像圖片中的按鈕居中(一個會很容易)?這可能嗎?
比其他選擇是做代碼中的一切(創建按鈕並創建約束)。在這裏,我可以查詢視圖寬度等,以相應地創建我的按鈕。這是唯一的方法嗎?
如何管理?
編輯:
現在我放置視圖控制器上的空白標籤。在這個標籤我增加了以下約束:
- 居中y以:上海華,等於:0
- 居中X到:上海華,等於:0
在我的按鍵我設置固定的高度和寬度。比superview的尾部空間等於50(水平對中作品,因爲兩個屏幕尺寸具有相同的寬度)。在頂部的按鈕具有以下限制:
- 居中y以:不乾膠標籤,等於:20
底部的按鈕獲得:
- 頂層空間到:不乾膠標籤,等於:20
不知道爲什麼它需要不同的約束,但在GUI編輯器中,我採用了按鈕的底部或頂部點。在這裏,標籤也得到:
- 居中y以:頂部的按鈕,等於:20
- 頂層空間到:底部按鈕,等於:20
現在我有兩個按鈕centerd上屏幕不管3.5或4英寸顯示。一個缺點是在3.5英寸顯示屏上與導航控制器和工具欄的距離非常小。在這裏,我可以使按鈕變小。任何其他的選擇嗎?最初的想法是總是將空間設置爲頂部元素,但是在4英寸的屏幕上,底部的空間比底部多得多。
「集裝箱水平中心」:?我把上的按鈕在中間的視圖難道你的意思是「推斷」:你如何設置這樣的限制,我只能設定「寬度等於」是一個固定的寬度或我可以將按鈕1的寬度設置爲與按鈕2相同。 「高度」:我想要一個等距佈局。爲3.5英寸顯示器設置頂部不同於4英寸。但我會嘗試用空洞的視角來獲得更好的Y位置。 – testing 2014-09-03 10:21:53
我添加了一張圖片,顯示空的uiview是如何工作的。 – timothykc 2014-09-03 14:57:13
最後,我採取了你的方法。我想我可以根據屏幕大小改變按鈕的Y座標,以便在4英寸的屏幕上按鈕和UIView之間的間距更高。但我只能使用空的UIView或將其釘在頂部/底部。 – testing 2014-09-17 19:50:47