Я пытаюсь изменить раскладку, когда откроется программная клавиатура.
У меня есть edittext и кнопка. Я четко вижу текст редактирования, открыта ли клавиатура или нет, но проблема в том, что я показываю раскрывающийся список для текста редактирования. Когда раскрывающийся список открывается, он открывается поверх текста редактирования, потому что между клавиатурой и раскрывающимся списком недостаточно места.
Итак, я пытаюсь сдвинуть весь экран вверх (будет отображаться только текст редактирования). Так что можете показать раскрывающийся список ниже Edittext.
Я пробую следующие вещи...
Я добавляю следующий атрибут в свою активность в
AndroidManifest.xml
android:windowSoftInputMode="adjustPan"
Я добавляю следующий код в свой
.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" />
Я не понимаю, почему мой макет не смещается вверх. Пожалуйста, дайте мне любую подсказку или ссылку.