Android應用藉助LinearLayout實現垂直水平居中佈局

首先說的是LinearLayout佈局下的居中一般是這樣的:
(注意:android:layout_width="fill_parent" android:layout_height="fill_parent" 屬性中,若水平居中,至少在寬度上佔全屏;若垂直居中,則在高度上佔全屏)

<LinearLayout
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:gravity="center|center_horizontal|center_vertical" >
  // 上面gravity屬性的參數:center爲居中,center_horizontal爲水平居中,center_vertical爲垂直居中
  <Button
    android:id="@+id/Binding_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="關聯新賬戶" />
</LinearLayout>

要實現垂直水平居中,幾個基本參數值得注意:
1、android:orientation="vertical"表示該佈局下的元素垂直排列;
2、android:layout_gravity="center_horizontal"表示該佈局在父佈局裏水平居中,此時其父佈局必須擁有android:orientation="vertical"屬性;
3、android:layout_gravity="center_vertical"表示該佈局在父佈局裏垂直居中,此時其父佈局必須應設置成android:orientation="horizontal"屬性(默認爲該屬性),且其父佈局的高度應設置爲android:layout_height="fill_parent"屬性;
4、android:gravity="center_horizontal"表示該佈局下的元素水平居中;

線性佈局垂直水平居中佈局文件實例:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical" > 

  <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_gravity="center_horizontal"
    > 

    <LinearLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:orientation="vertical"
      android:layout_gravity="center_vertical"
      > 

      <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" > 

        <TextView
          android:layout_width="100dp"
          android:layout_height="wrap_content"
          android:gravity="right"
          android:text="用戶名" /> 

        <EditText
          android:layout_width="300dp"
          android:layout_height="wrap_content" />
      </LinearLayout> 

      <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" > 

        <TextView
          android:layout_width="100dp"
          android:layout_height="wrap_content"
          android:gravity="right"
          android:text="Email" /> 

        <EditText
          android:layout_width="300dp"
          android:layout_height="wrap_content" />
      </LinearLayout>
    </LinearLayout>
  </LinearLayout>
</LinearLayout>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章