歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Android SDK Tutorials系列 - Hello Views - Linear Layout

LinearLayout 是 ViewGroup 的一種,裡面包含的View按線性方式排列,要麼垂直方向,要麼水平方向。

不要過度使用LinearLayout。如果你開始嵌套使用LinearLayout,那也許你應該考慮使用RelativeLayout了。

  1. 創建一個工程:HelloLinearLayout
  2. 打開 res/layout/main.xml,修改內容如下: 
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"  
    3.     android:orientation="vertical"  
    4.     android:layout_width="fill_parent"  
    5.     android:layout_height="fill_parent">  
    6.   
    7.   <LinearLayout  
    8.       android:orientation="horizontal"  
    9.       android:layout_width="fill_parent"  
    10.       android:layout_height="fill_parent"  
    11.       android:layout_weight="1">  
    12.       <TextView  
    13.           android:text="red"  
    14.           android:gravity="center_horizontal"  
    15.           android:background="#aa0000"  
    16.           android:layout_width="wrap_content"  
    17.           android:layout_height="fill_parent"  
    18.           android:layout_weight="1"/>  
    19.       <TextView  
    20.           android:text="green"  
    21.           android:gravity="center_horizontal"  
    22.           android:background="#00aa00"  
    23.           android:layout_width="wrap_content"  
    24.           android:layout_height="fill_parent"  
    25.           android:layout_weight="1"/>  
    26.       <TextView  
    27.           android:text="blue"  
    28.           android:gravity="center_horizontal"  
    29.           android:background="#0000aa"  
    30.           android:layout_width="wrap_content"  
    31.           android:layout_height="fill_parent"  
    32.           android:layout_weight="1"/>  
    33.       <TextView  
    34.           android:text="yellow"  
    35.           android:gravity="center_horizontal"  
    36.           android:background="#aaaa00"  
    37.           android:layout_width="wrap_content"  
    38.           android:layout_height="fill_parent"  
    39.           android:layout_weight="1"/>  
    40.   </LinearLayout>  
    41.           
    42.   <LinearLayout  
    43.     android:orientation="vertical"  
    44.     android:layout_width="fill_parent"  
    45.     android:layout_height="fill_parent"  
    46.     android:layout_weight="1">  
    47.     <TextView  
    48.         android:text="row one"  
    49.         android:textSize="15pt"  
    50.         android:layout_width="fill_parent"  
    51.         android:layout_height="wrap_content"  
    52.         android:layout_weight="1"/>  
    53.     <TextView  
    54.         android:text="row two"  
    55.         android:textSize="15pt"  
    56.         android:layout_width="fill_parent"  
    57.         android:layout_height="wrap_content"  
    58.         android:layout_weight="1"/>  
    59.     <TextView  
    60.         android:text="row three"  
    61.         android:textSize="15pt"  
    62.         android:layout_width="fill_parent"  
    63.         android:layout_height="wrap_content"  
    64.         android:layout_weight="1"/>  
    65.     <TextView  
    66.         android:text="row four"  
    67.         android:textSize="15pt"  
    68.         android:layout_width="fill_parent"  
    69.         android:layout_height="wrap_content"  
    70.         android:layout_weight="1"/>  
    71.   </LinearLayout>  
    72.   
    73. </LinearLayout>  

    仔細查看這個XML,最外層是一個LinearLayout,它的android:orientation屬性被設置為"vertical",意味著它包含的View(一共兩個)按照垂直方向排列。它包含的第一個View是另一個LinearLayout,這個LinearLayout使用水平排列方式;包含的第二個LinearLayout使用垂直排列方式。兩個內部的LinearLayout都包含了幾個TextView,這些TextView都按照包含他們的LinearLayout規定的方式排列著。

  3. 現在打開HelloLinearLayout.java,確保它裝載了res/layout/main.xml布局文件,修改如下:

    public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);     setContentView(R.layout.main); }

    setContentView(int) 方法裝載這個Activity的布局文件,資源ID — R.layout.main 指向res/layout/main.xml布局文件。

  4. 運行這個應用。

應該能看到下面的畫面:


注意XML屬性是如何設置每個View的顯示方式的。試著修改android:layout_weight(layout_width/layout_height)的值,看看各個View是如何顯示的。


返回 Android SDK Tutorials系列 - Hello Views
Copyright © Linux教程網 All Rights Reserved