溫馨提示×

layout_gravity怎樣設(shè)置對齊方式

小樊
83
2024-10-16 20:01:27
欄目: 編程語言

layout_gravity 是 Android 中用于設(shè)置子視圖在其父布局中的對齊方式的屬性。這個屬性可以設(shè)置為以下值之一:

  1. top:子視圖位于父布局的頂部。
  2. bottom:子視圖位于父布局的底部。
  3. left:子視圖位于父布局的左側(cè)。
  4. right:子視圖位于父布局的右側(cè)。
  5. center:子視圖位于父布局的中心。
  6. center_horizontal:子視圖在水平方向上位于父布局的中心。
  7. center_vertical:子視圖在垂直方向上位于父布局的中心。
  8. fill:子視圖將填充其父布局的空間,可能會改變其大小。
  9. fill_horizontal:子視圖在水平方向上填充其父布局的空間。
  10. fill_vertical:子視圖在垂直方向上填充其父布局的空間。

要設(shè)置 layout_gravity,您可以在 XML 布局文件中為子視圖添加 android:layout_gravity 屬性,或者在代碼中使用 LayoutParams 類設(shè)置。以下是在 XML 布局文件中設(shè)置 layout_gravity 的示例:

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

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Top"
        android:layout_gravity="top"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Bottom"
        android:layout_gravity="bottom"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Left"
        android:layout_gravity="left"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Right"
        android:layout_gravity="right"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Center"
        android:layout_gravity="center"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Center Horizontal"
        android:layout_gravity="center_horizontal"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Center Vertical"
        android:layout_gravity="center_vertical"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Fill"
        android:layout_gravity="fill"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Fill Horizontal"
        android:layout_gravity="fill_horizontal"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Fill Vertical"
        android:layout_gravity="fill_vertical"/>

</LinearLayout>

在代碼中設(shè)置 layout_gravity 的示例:

LinearLayout linearLayout = findViewById(R.id.linearLayout);

TextView textView = new TextView(this);
textView.setText("Top");
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
        LinearLayout.LayoutParams.WRAP_CONTENT,
        LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.gravity = Gravity.TOP;
textView.setLayoutParams(layoutParams);
linearLayout.addView(textView);

0