layout_weight與gravity屬性詳解

點滴知識,重在積累。

layout_weight

layout_weight使用于線性布局中,其意義簡單來說就是分配剩余空間的一個屬性,可以用來設(shè)置權(quán)重,先來看看在layout_width="0dp"和layout_width="match_parent"下效果。

當(dāng)layout_width="0dp"時

layout_weight_1.png
text_1.png

系統(tǒng)先給3個TextView分配他們的寬度值0dp,然后會把剩下來的屏幕空間按照1:2:2的比例分配給3個TextView,所以顯示了如圖text_1中的比例分配。

當(dāng)layout_width="match_parent"時

layout_weight_2.png
text_2.png

當(dāng)TextView的寬度為match_parent的時候如圖顯示3:1:1,原因是系統(tǒng)先給他們分配寬度值為match_parent,然后把剩余的空間(match_parent- match_parent- match_parent- match_parent =-2match_parent)按照1:2:2比例分配給它們:
text1: match_parent+(-2match_parent)/5=3(match_parent)/5

text2:match_parent+(-2match_parent)*2/5=(match_parent)/5

text3:match_parent+(-2match_parent)*2/5=(match_parent)/5
所以會如圖text_2顯示3:1:1 。

layout_weight_3.png
text_3.png

同上面的算法就會出現(xiàn)如text_3顯示(有興趣可以自己動手算一算)。

gravity,layout_gravity

android:gravity這個屬性是指本元素所有子元素的重力方向
layout_gravity這個是本元素相對父元素的重力方向


gravity.png

如果gravity和layout_gravity同時出現(xiàn)時,則子元素的優(yōu)先 如圖

gravity_1.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容