- If unspecified, the sum is computed by adding the layout_weight of all of the children.
- Must be a floating point value, such as "1.2".
android:layout_weight
- Linear layout提供此屬性,讓其所有的子顯示物件可以透過設定該屬性來表明自己的重要性。
- 當所有有定義明確長寬的物件都好之後,剩下的空間分配給有宣告layout_weight屬性的物件,按照優先權使所有剩下空間被填滿。
- 分配方式:
- 若是指定在 child,值越高分配到越多空間。
- ex: 假設剩下空間有三個View(A、B、C)要分配,其權值大小分別為3、1、1,因此它們所分配到的空間大小將會是3:1:1。
- 若是指定在 parent,值越高則分配到越少空間。
利用這兩個屬性可以分配 LinearLayout 中 widgets 的比例:
This can be used for instance to give a single child 50% of the total available space by giving it a layout_weight of 0.5 and setting the weightSum to 1.0.
# Update on 2012/06/18
假設是兩個 widgets 要依比例分配寬,那麼此兩 widgets 的寬則應設為 0 dp,讓系統可調整其比例。
* Reference
- LinearLayout | Android Developers
- Chickenrice's Workshop: [Android] layout_weight的妙用-讓View的大小以百分比率顯示(proportionate size)
- milkmidi Blog: Android LinearLayout **
沒有留言:
張貼留言