-1

テキストビューを含むレイアウトを持つアプリがあります。android:windowSoftInputMode="adjustPan" を使用すると、キーボードが開くと画面全体が上がります。しかし、ビューは半分にカットされます。これはキーボードのない画像です: ここに画像の説明を入力

それはキーボードを開いた状態です: ここに画像の説明を入力

ご覧のとおり、テキストボックスが切り取られています。Facebookのようにしたい:キーボードをオフにして: ここに画像の説明を入力

キーボードがオンの場合: ここに画像の説明を入力

どうすればそれを管理できますか?Facebook では、レイアウト全体がキーボードの上にあります。ありがとう!

4

1 に答える 1

0

ルートレイアウトとして相対レイアウトを使用し、

android:layout_alignParentBottom = "true"

お子様のビューに合わせて、ソフトキーボードで上にスライドさせます

以下はサンプルコードです。

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/background_light">
    <Button
        android:text="Add Contact"
        android:id="@+id/addContact"
        android:layout_alignParentTop="true"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"></Button>

    <EditText
        android:id="@+id/searchEditText"
        android:layout_below="@id/addContact"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_marginBottom="5dp"
        android:hint="Search" />
    <ExpandableListView
        android:layout_below="@id/searchEditText"
        android:layout_above="@+id/selection_layout"
        android:id="@+id/contactList"
        android:layout_width="fill_parent"
        android:layout_height="0px"
        ></ExpandableListView>
    <LinearLayout
        android:id="@+id/selection_layout"
        android:layout_alignParentBottom="true"
        android:orientation="horizontal"
        android:gravity="center"
        android:background="@drawable/black_white_gradient"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <Button
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:id="@+id/ok"
            android:text="Ok" />
        <Button
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:id="@+id/cancel"
            android:text="Cancel" />
    </LinearLayout>
</RelativeLayout>
于 2012-11-28T12:30:04.890 に答える