Android: показ клавиатуры перемещает мои компоненты вверх, я хочу скрыть их вместо этого
я добавил LinearLayOut с некоторыми кнопками мой экран RelativeLayOut он сам
вот код для этого линейного менеджера компоновки
<LinearLayout
android:orientation="horizontal"
android:gravity="bottom"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:id="@+id/Footer"
android:layout_marginBottom="5dp">
вот в чем проблема:
в верхней части есть компонент EditText , и он выводит на экран мягкую клавиатуру, и приносит мой менеджер нижнего колонтитула поверх клавиатуры и в конечном итоге разрушает весь мой пользовательский интерфейс.
каково точное решение?
P. S. У меня удалены android:gravity="bottom"
и android:layout_alignParentBottom="true"
один за другим, но с невезением я не получил желаемого результата.
спасибо
2 ответа:
добавить
android:windowSoftInputMode="adjustPan"
для манифеста-к соответствующему действию:<activity android:name="MyActivity" ... android:windowSoftInputMode="adjustPan" ... </activity>
вы, вероятно, хотите
<activity ... android:windowSoftInputMode="adjustNothing"> </activity>
это предотвратит любые изменения макета при отображении мягкой клавиатуры.
вероятно, есть некоторая путаница по этому поводу, так как в настоящее время он отсутствует в документации по адресу http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft