初入android之LinearLayout巢狀線性佈局

初入android之LinearLayout巢狀線性佈局

最終的效果如下,實現五個TextView控制元件在佈局中成圖中排列:

控制元件的巢狀層次如下圖:

巢狀的核心思想:從給出的設計圖可以看出TextView控制元件的分佈規律,LinearLayout佈局有兩種方式:一種是行,一種是列。從LinearLayout控制元件構造方式和TextView空間的排列方式分析可得,TextView可以看成排成了三列,第一,三列兩個,第二列一個。於是使用最外層列排列方式LinearLayout佈局,並且在下其巢狀兩個LinearLayout行控制元件(為了使TextView能在同一列排列),提示:在LinearLayout使用gravity屬性是操控它內部的控制元件的位置,而TextView使用gravity屬性是操控控制元件中文字的位置,而不能控制元件本身在佈局中的位置改變。

程式碼如下,寫的不好希望多多包涵,謝謝啦!

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="0.10"
android:gravity="left"
android:orientation="vertical" >
<TextView
android:id="@ id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@ id/textView2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="TextView2"
android:gravity="bottom" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="2.49"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:id="@ id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="0.33"
android:gravity="right" >
<TextView
android:id="@ id/textView11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@ id/textView21"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="TextView2"
android:gravity="bottom" />
</LinearLayout>
</LinearLayout>