Storyboard
對于多屏幕適配來說再合適不過了!但是有一些技巧可能很容易被忽略和二,今天要介紹的使用比例來控制布局可能就是其中之一徘铝。
在實際項目開發(fā)過程中,有些布局是按照比例來確定大小的,這個時候用下面的方法可以減少你的代碼量惕它,完全可以在Storyboard
中完成怕午!
下面介紹subview相對于superview的比例。完成從一個控制器里面添加一個Button淹魄,并使Button.width = Button.superview.width/4
;
Step 1 添加一個UIButton
郁惜,并使用布局使它居于view
中心
在Storyboard
中添加一個UIViewController
,然后往里面添加一個UIButton
選中Button
甲锡,在右下角的快捷操作中如圖所示進(jìn)行設(shè)置兆蕉,點擊Add 2 Constraints
此時缤沦,你可能還需要再次選中這個Button
虎韵,再使用快捷鍵Command
+option
+=
修復(fù)frame,這時Button
的frame和layout的約束才會對應(yīng)起來缸废。如果不修復(fù)frame也不會影響實際運行的效果包蓝,但是Xcode會提示警告!
Step 2
在View的樹形圖中企量,先選中View
再選中Button
如圖所示添加約束,勾選Equal Widths
届巩,點擊Add 2 Constraints
硅瞧。
Step 3
選中Button
如圖所示編輯約束的參數(shù),Multiplier
設(shè)置為1:4
Done
Command
+option
+=
補(bǔ)充
相同層級和不同層級的view之間都可以用這種比例方式確定大小姆泻,但是必須有條件
先確定其中一個view的大小。這里說的條件
冒嫡,指的是約束
拇勃,或者UIViewController.view
這種由父級容器確定了大小的條件。
一般情況下孝凌,寬度和高度需要分別設(shè)置比例方咆,看需求而定。
寬度和高度之間也可以設(shè)置比例蟀架,設(shè)置方法和上面基本相同瓣赂,不同的是,只需要選擇一個view片拍,添加約束的時候只勾選Aspect Ratio
煌集,設(shè)置比例的方法同上。