1. 程式人生 > >LinearLayout和RelativeLayout佈局中使用android:orientation

LinearLayout和RelativeLayout佈局中使用android:orientation

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">     <!--垂直佈局-->

    <!--match_parent:當前元素和父類一樣;wrap_content:自適應;text:元素中顯示的文字內容-->
    <Button
        android:text="button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/button_1" />

    <Button
        android:text="button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/button_2" />
</LinearLayout>

效果:

1:線性佈局在xml檔案中使用<LinearLayout>來定義。

  線性佈局可以分為水平和垂直方向的佈局,可以通過android:orientation來定義方向

       android:orientation=“horizontal”表示水平方向,android:orientation=“vertical”表示垂直方向。

當 android:orientation=”vertical” 時, 只有水平方向的設定才起作用,垂直方向的設定不起作用。即:left,right,center_horizontal 是生效的。

當 android:orientation=”horizontal” 時, 只有垂直方向的設定才起作用,水平方向的設定不起作用。即:top,bottom,center_vertical 是生效的。

:2:Android線性佈局LinearLayout注意設定屬性android:orientation屬性,否則有的元件可能無法顯示。
該屬性不設定時預設為horizontal。

比如上面那段程式碼我刪除了

android:orientation="vertical"

第二個按鈕就會被第一個按鈕覆蓋,顯示不出來

3:相對佈局在xml檔案中使用<RelativeLayout>來定義。

RelativeLayout佈局當中使用android:orientation="vertical" ,這個語句不起作用。這句話的意思是佈局方式是垂直佈局,Relatactivelayout 沒這個屬性

,去掉不會產生影響。

4:android:layout_width表示控制元件的寬度,android_layout_height表示控制元件的高度,其屬性值有wrap_content、fill_parent、match_parent三種。

其中,wrap_content表示填滿父控制元件的空白,fill_parent表示大小剛好足夠顯示當前控制元件裡的內容,match_parent與fill_parent作用是相同的。

android:layout_weight表示控制元件的權重,描述了控制元件所佔的比例有多大。所有的檢視都有layout_weight值,其預設為零,表示需要顯示多大的檢視就佔據多大的螢幕空間。若賦一個高於零的值,則將父檢視中的可用空間分割,分割大小具體取決於每一個檢視的layout_weight值以及該值在當前屏幕布局的整體layout_weight值和在其它檢視屏幕布局的layout_weight值中所佔的比率而定。