-1

ソフト キーボードが開くときにレイアウトを上に移動しようとしています。

私は編集テキストとボタンを持っています。キーボードが開いているかどうかに関係なく、編集テキストをはっきりと見ることができますが、編集テキストのドロップダウンが表示されていることが問題です。ドロップダウンを開くと、キーボードとドロップダウンの間に十分なスペースがないため、編集テキストの上に開きます。

そのため、画面全体を上に移動しようとしています (edittext のみが表示されます)。そのため、Edittext の下にドロップダウンを表示できます。

私は次のことを試みます...

  1. のアクティビティに次の属性を追加しますAndroidManifest.xml

    android:windowSoftInputMode="adjustPan"

  2. 次のコードを.java file

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN)

相対レイアウトを使用する必要がある場所を読みました。私もこれを試しますが、どれも役に立ちません。

参考までに、私の xml コードを以下に示します。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:background="#EFEFEF"
 >

<ViewStub
    android:id="@+id/vsHeader2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inflatedId="@+id/header"
    android:layout="@layout/copyofheader" />



        <TextView
            android:id="@+id/firstPara"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="56dip"
            android:paddingLeft="12dp"
            android:paddingRight="12dp"
            android:text=""
            android:textSize="16sp" />

        <TextView
            android:id="@+id/secondPara"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/firstPara"
            android:layout_marginTop="24dip"
            android:paddingLeft="12dp"
            android:paddingRight="12dp"
            android:text=""
            android:textColor="#666666"
            android:textSize="16sp" />

         <AutoCompleteTextView
            android:id="@+id/mysecondautocomplete"
            android:layout_width="fill_parent"
            android:layout_height="40dip"
            android:layout_below="@id/secondPara"
            android:layout_marginLeft="12dip"
            android:layout_marginRight="12dip"
            android:layout_marginTop="12dip"                
             android:ems="10"

             android:dropDownVerticalOffset="44dip"
             android:windowSoftInputMode="stateHidden"
             android:dropDownHeight="290dip"    
              android:imeOptions="actionSearch"
            android:drawableLeft="@drawable/search_grey"
            android:background="@drawable/borderforloginedittext"
            android:drawablePadding="6dip"
            android:hint="Enter Restaurant Name"
            android:inputType="textPersonName"
             android:dropDownWidth="match_parent"
            android:textColor="#cc3333"
            android:textColorHint="#999999"
            android:textSize="16sp" />

レイアウトが上に移動しない理由がわかりません。何かヒントや参考になれば幸いです。

4

2 に答える 2

0

レイアウト全体を Scrollview 内に配置します。したがって、ソフト キーボードが開くと、それに応じてビューが調整されます。

于 2013-09-05T11:23:03.417 に答える