1

次の XML レイアウトをご覧ください。

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

    <TextView 
        android:id="@+id/lblPassword"
        android:text="@string/label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        />

    <EditText
        android:id="@+id/pwdText"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:inputType="textPassword"
        />


    <Button 
        android:text="@string/btnLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="showMessage"
        />

</LinearLayout>

これにより、次のGUIが生成されます(添付) ここに画像の説明を入力

ご覧のとおり、テキスト ボックスの高さが予想外に大きすぎます。実際に必要なのは、アプリに適切に収まるようにテキストボックスの幅を調整し、入力するのに十分なスペースを提供することです (何もしないと、テキストボックスの幅が非常に小さく表示されます)。私はアンドロイドが初めてです。助けてください!

4

5 に答える 5

1

デバイスの幅に合わせて幅を拡張するには、 に置き換えるandroid:layout_width="wrap_content"android:layout_width="match_parent"、幅を dp で指定できます。

属性android:layout_height="0dp"を設定することで、android:layout_weight="1"この要素の高さで画面上の残りのスペースをすべて埋めたいと言っています。

于 2012-10-14T14:27:52.777 に答える
1

この行を削除すると問題は解決しますかandroid:layout_height="0dp"

編集: または変更しますandroid:layout_height="wrap_content"

于 2012-10-14T14:22:07.900 に答える
1

EditTextをこれに変更します

<EditText
        android:id="@+id/pwdText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:inputType="textPassword"
        />
于 2012-10-14T14:26:09.410 に答える
0

最も外側のレイアウトの幅または高さに「match_parent」属性を使用しないでください。wrap_content または fill_parent のいずれかを使用します。また、editText の layout_height の 0dp を wrap_content に置き換えます。

于 2012-10-14T14:25:55.603 に答える