Android —— LinearLayout屬性集合(一)

在開發過程中,Android控件/控件屬笥有好多都沒有使用過,所以這裏進行總結學習下 ^ ^

 

一:LinearLayout 線性佈局屬性

1)baselineAligned :該屬性默認爲true,設爲false後將會阻止該佈局管理器與它的子元素基線對齊

 

 

根據圖上的佈局,將此屬性設爲false,然後運行後的結果如下:

 

將此屬性去掉/設置爲true,運行結果如下: 

 

根據以上事例,那基線也就顯而易見了吧,說白了就是控件的顯示是首先從底部對齊的,如果設爲false那就從頭部開始對齊,注:佈局中控件的字體定義了大小是爲了顯示效果更明顯,如果不定義字體大小則看不出具體變化。ps:線性佈局爲水平方向

 

2)baselineAlignedChildIndex:當前線性佈局中的view按照哪個控件的基線對齊,下標從0開始

 

根據圖中代碼的設置,期望整個佈局中第一個控件是按照子佈局中第3個View的基線進行顯示的,因此得到如下圖所示結果:

 

注:baselineAlignedChildIndex屬性只適應於控件類型爲Button、TextView、EditView,如果佈局中包含除此之外的控件,則其會報如下錯誤(不知道如何去得到基線):

 

 

3)divider:設置佈局中控件間的分隔線與showDividers屬性結合使用

 

showDividers的屬性包括:

middle 在每一項中間添加分割線

end 在整體的最後一項添加分割線

beginning 在整體的最上方添加分割線

none 無

效果圖:

shape文件內容:

注:以上divider屬性需要使用@drawable來引用圖片或者shape文件才能顯示,使用color的話效果不變,shape文件中需要添加顏色及size的屬性。showDividers中的屬性可以根據需求進行更改,這裏就不一一列舉了。

 

4)weightSum:權重的總和

 

權重總和爲8,而文字=‘第二個控件’的TextView權重爲6,而另一個控件則佔剩餘的2個權重。

 

5)measureWithLargestChild:默認爲false,當爲true時,該佈局中的所有view會按照最大的那個控件的寬/高爲基準進行顯示(前提:view中必須使用權重)

 

如圖所示將measureWithLargestChild屬性值設爲true的時侯,根據佈局的方向如果是垂直的話,那麼文字多的控件有多高,其它控件所佔的高度就會與它一樣高;如果是水平的話,那就是寬相同。如果控件中沒有使用weight權重的話,那就如文本爲“第四個控件”一樣無任何變化。

線性佈局的屬性就總結到這裏,其它基礎屬性就不在這裏闡述了,如有不準確的地方請勿噴!!

本文章多用圖形與描述結合的形式進行總結,更爲直觀些。大笑

 

 

 

 


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章