В моей деятельности есть android: windowSoftInputMode = "adjustResize" и ведет себя соответственно в Android 2.1:
Перед появлением мягкой клавиатуры
С клавиатурой
Однако в Honeycomb мягкая клавиатура не меняет размер моего макета, вместо этого она закрывает кнопки:
Такое же поведение на вкладке Galaxy 10 дюймов и Motorola Xoom.
Я несколько раз переделывал свой макет, пытаясь заставить его быть совместимым с Honeycomb, но безрезультатно. Мягкая клавиатура выдвинет вид EditText, но не кнопки.
Вот простой проект, демонстрирующий проблему.
Изменить. Ссылка исправлена.
Используемый макет:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:layout_alignParentBottom="true">
<Button
android:id="@+id/save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Save" />
<Button
android:id="@+id/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancel" />
</LinearLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
<EditText
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
</ScrollView>
</RelativeLayout>
Единственная связанная с этим проблема - this, но отключение аппаратного ускорения не повлияло на меня. Я также прочитал руководство для Android о том, как ваше приложение совместимо с методами ввода, но не распознало какое-либо решение там.
Я делаю что-то явно неправильно? Или это ошибка, о которой у кого больше информации?