私は現在、さまざまなサイズの Android デバイスに適応するレイアウト ファイルに取り組んでいます。これまでのところ、私はいくつかの成功を収めています。「layout_weight」を使用して、レイアウト内の特定の割合のスペースを占める線形レイアウトを作成できました。これは、2'7 インチのスクリーンまたは 10'1 インチのスクリーンの全画面をカバーするようにディスプレイを引き延ばすことができることを意味します。ただし、上部の線形レイアウトのテキスト サイズに問題があります。TextSize を大小のデバイスに適応させるにはどうすればよいですか? これが私のコードです。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:baselineAligned="false"
android:weightSum="1.0"
android:background="#ff0000"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="0.25"
android:weightSum="1.0">
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="medium"
android:textSize="30sp"
android:layout_weight="1"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="0.25"
android:weightSum="1.0">
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_1"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_2"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_3"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_4"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="0.25"
android:weightSum="1.0">
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_1"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_2"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_3"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_4"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="0.25"
android:weightSum="1.0">
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_1"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_2"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_3"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
<ImageView
android:layout_width="0dip"
android:layout_height="fill_parent"
android:src="@drawable/sample_4"
android:layout_gravity="center_horizontal"
android:layout_weight="0.25"
/>
</LinearLayout>
</LinearLayout>