layout_gravity 是 Android 中用于設置子視圖在其父布局中的對齊方式的屬性。這個屬性可以設置為以下值之一:
top:子視圖位于父布局的頂部。bottom:子視圖位于父布局的底部。left:子視圖位于父布局的左側。right:子視圖位于父布局的右側。center:子視圖位于父布局的中心。center_horizontal:子視圖在水平方向上位于父布局的中心。center_vertical:子視圖在垂直方向上位于父布局的中心。fill:子視圖將填充其父布局的空間,可能會改變其大小。fill_horizontal:子視圖在水平方向上填充其父布局的空間。fill_vertical:子視圖在垂直方向上填充其父布局的空間。要設置 layout_gravity,您可以在 XML 布局文件中為子視圖添加 android:layout_gravity 屬性,或者在代碼中使用 LayoutParams 類設置。以下是在 XML 布局文件中設置 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>
在代碼中設置 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);