天天看点

android的LinearLayout布局

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

<code>&lt;?xml version=</code><code>"1.0"</code> <code>encoding=</code><code>"utf-8"</code><code>?&gt;</code>

<code>&lt;LinearLayout xmlns:android=</code><code>"http://schemas.android.com/apk/res/android"</code>

<code>    </code><code>android:layout_width=</code><code>"fill_parent"</code>

<code>    </code><code>android:layout_height=</code><code>"fill_parent"</code>

<code>    </code><code>android:paddingLeft=</code><code>"16dp"</code>

<code>    </code><code>android:paddingRight=</code><code>"16dp"</code>

<code>    </code><code>android:orientation=</code><code>"vertical"</code> <code>&gt;</code>

<code>    </code><code>&lt;EditText</code>

<code>        </code><code>android:layout_width=</code><code>"fill_parent"</code>

<code>        </code><code>android:layout_height=</code><code>"wrap_content"</code>

<code>        </code><code>android:hint=</code><code>"@string/to"</code> <code>/&gt;</code>

<code>        </code><code>android:hint=</code><code>"@string/subject"</code> <code>/&gt;</code>

<code>        </code><code>android:layout_height=</code><code>"0dp"</code>

<code>        </code><code>android:layout_weight=</code><code>"1"</code>

<code>        </code><code>android:gravity=</code><code>"top"</code>

<code>        </code><code>android:hint=</code><code>"@string/message"</code> <code>/&gt;</code>

<code>    </code><code>&lt;Button</code>

<code>        </code><code>android:layout_width=</code><code>"100dp"</code>

<code>        </code><code>android:layout_gravity=</code><code>"right"</code>

<code>        </code><code>android:text=</code><code>"@string/send"</code> <code>/&gt;</code>

<code>&lt;/LinearLayout&gt;</code>

<code>&lt;!--    android:orientation=</code><code>"vertical"</code> <code>代表方向垂直--&gt;</code>

<code>&lt;!--  android:layout_weight=</code><code>"1"</code> <code>代表所占权重(比例)    message占满其他元素剩余的地方,</code>

<code>        </code><code>如果有多个android:layout_weight=</code><code>1</code><code>,则平分剩余空间</code>

<code>         </code><code>android:gravity=</code><code>"top"</code><code>表示从上面开始占(写了android:layout_weight的)</code>

<code>         </code> 

<code>           </code><code>android:layout_gravity=</code><code>"right"</code>

<code>           </code><code>整个组件的位置居右</code>

<code>--&gt;</code>

<a href="http://s1.51cto.com/wyfs02/M01/8B/42/wKiom1hIFsWCFl9PAABRkFm5EbE270.png-wh_500x0-wm_3-wmp_4-s_617713268.png" target="_blank"></a>

<code>    </code><code>android:orientation=</code><code>"horizontal"</code> <code>&gt;</code>

<code>        </code><code>android:layout_width=</code><code>"wrap_content"</code>

<a href="http://s2.51cto.com/wyfs02/M01/8B/3F/wKioL1hIFxSSehAQAAAj4zxp0jY739.png-wh_500x0-wm_3-wmp_4-s_3189827534.png" target="_blank"></a>

线性布局支持给个别的子视图设定权重,通过android:layout_weight属性。就一个视图在屏幕上占多大的空间而言,这个属性给其设定了一个重要的值。一个大的权重值,允许它扩大到填充父视图中的任何剩余空间。子视图可以指定一个权重值,然后视图组剩余的其他的空间将会分配给其声明权重的子视图。默认的权重是0.

例如,如果有三个文本框,其中两个声明的权重为1,另外一个没有权重,没有权重第三个文本字段不会增加,只会占用其内容所需的面积。其他两个同样的会扩大以填补剩余的空间,在三个文本域被测量后。如果第三个字段,然后给定的权重为2(而不是0),那么它现在的声明比其他的更重要,所以它得到一半的总的剩余空间,而前两个平均分配剩余的。

 本文转自 matengbing 51CTO博客,原文链接:http://blog.51cto.com/matengbing/1880518

继续阅读