天天看點

UGUI系列——Unity Auto Layout的使用(二)

UGUI系列其他博文,可通過導航帖檢視

Layout Element的應用

當物體被Layout元件控制時,你是無法控制RectTransform的Width和Height的,Layout Element便是為了解決這個狀況,讓layout變得更靈活。

下面介紹Layout Element參數,這裡以Vertical Layout Group為例:

MinWidth/MinHeight:如同名字一樣,它是用來限制子物體的Width/Height不能小于你所設定的值

Preferred Width/Preferred Height:首選寬度/首選高度,就是當空間足夠時,物體的width/height會被設定成Preferred Width/Preferred Height的值

如圖:

UGUI系列——Unity Auto Layout的使用(二)

勾選Child Controls Size,讓Layout元件控制子物體,千萬不要勾選自适應Child Force Expand,不然設定的首選參數(Preferred Width/Preferred Height)不會起作用

UGUI系列——Unity Auto Layout的使用(二)

如上如,這樣,你就可以控制這個物體的寬高了

UGUI系列——Unity Auto Layout的使用(二)

這個首選寬度的前提是空間足夠,我的game視圖的尺寸設定成了750*1280,

是以上圖的Preferred Width是800,但是物體的寬度是750

Flexible Width/Flexible Height:靈活寬度/靈活高度,這個參數的值不能為負。

這裡以Flexible Height為例

Vertical Layout Group設定如下

UGUI系列——Unity Auto Layout的使用(二)

三個子物體都帶了Layout Element,設定如下

UGUI系列——Unity Auto Layout的使用(二)

layout元件會把所有子物體按照Flexible Height的比例配置設定高度

如:

圖中父物體Vertical 的高即為總高度TotalHeight,現在三個子物體的Flexible Height都是1,那個每個子物體就占總高的 1/(1+1+1)即為三分之一

是以效果如下圖

UGUI系列——Unity Auto Layout的使用(二)

那麼,我們修改red的Layout Element 的參數如下

UGUI系列——Unity Auto Layout的使用(二)

這個時候Red子物體的Height應該占用 0.5/(0.5+1+1)即為 五分之一,如圖高為256

以上便是Layout Element的用法。

我會在我的公衆号上推送新的博文,也可以幫大家解答問題

微信公衆号 Andy and Unity 搜尋名稱或掃描二維碼

UGUI系列——Unity Auto Layout的使用(二)

希望我們能共同成長,共同進步