0

こんにちは、11個のボタンを持つアプリを開発しています。相対レイアウトを作成し、ボタンを希望どおりに配置しました。Android スタジオでは、nexus 4 画面をガイドとして使用しています。Nexus 4 のレイアウト

320*480 などの低解像度の画面でアプリを実行すると、最後のボタンが消えるか、画面から消えます。下の写真に見られるように。

320*480 のレイアウト

私の幅と高さはすべてディップです。これを解決するにはどうすればよいですか?

4

2 に答える 2

1

Android 向けに設計する場合は dp を使用するのが正しい方法ですが、すべての画面に同じ量の dp が正確に含まれているわけではないことを理解する必要があります。

誰にとってもレイアウトを少し小さくするか、ボタンのすべての行を水平の線形レイアウトに配置して、各ボタンを等しくandroid:layout_weightすることで、画面のサイズに関係なく均等に広がるようにすることができます。余白を使用して、それらの間の間隔を制御します。

同じ原理で重みを使用して垂直方向の問題を解決できます。すべての行を垂直線形レイアウトに配置し、それらに等しい重みを与えます。

于 2013-11-10T08:27:23.097 に答える
0

LinearLayoutで使用する必要がありますandroid:weightSum

1. 親の android:weightSum を設定します

2.各子の android:layout_weight を比例的に設定します (例weightSum="6": 6 つの子:layout_weight="1"それぞれ)

3.Dimensionボタンのサイズを指定するために使用し、これこれを確認します

レイアウト.xml

 <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:weightSum="6">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="1" />

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:orientation="horizontal" />

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:orientation="horizontal" />
        ///////////////
        </LinearLayout>
于 2013-11-10T08:37:16.350 に答える