Подтвердить что ты не робот

Можно ли всегда показывать панель действий при использовании функции настройкиPan как режим мягкого ввода?

В моем приложении у меня есть ListView с нижним колонтитулом, который содержит пользовательское представление с EditText внутри. В верхней части находится панель действий. В настоящее время активность используется SOFT_INPUT_ADJUST_RESIZE (adjustResize) как режим мягкого ввода и не закрывает клавиатуру при прокрутке.

Чтобы показать больше списка, я хотел удалить клавиатуру при прокрутке и получить более плавное поведение прокрутки, которое я хочу изменить, чтобы использовать SOFT_INPUT_ADJUST_PAN (adjustPan). Однако, если я перейду на adjustPan, весь вид, включая панель действий, будет нажат вверх. Мне бы хотелось, чтобы список был нажат, но панель действий всегда была наверху. Можно ли это сделать? Если нет, можно ли использовать adjustResize и получить плавное изменение размера анимации?

До сих пор я пробовал:

  • Запрос Window.FEATURE_ACTION_BAR_OVERLAY, но это не помогло, хотя документация казалась многообещающей.
  • Перемещение контейнера панели действий в зависимости от того, видна ли мягкая клавиатура или нет, что в итоге выглядело как неустойчивый хак, поэтому я его переделал.
  • До сих пор я исключал adjustResize из-за поведения чертежа, которое происходит при прокрутке, минимизации клавиатуры и одновременного изменения размера списка. Есть ли способ сделать плавный анимированный размер?
4b9b3361

Ответ 1

для настройкиPan

введите ниже код в строку объявления активности в файле manifest.xml

android:windowSoftInputMode="adjustPan"

как

<activity
        android:name="activity"
        android:windowSoftInputMode="adjustPan" >
</activity>

для удаления keybord, а scrack

пока вы получите результат в это время выполнить ниже код

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);

таким образом вы можете удалить keybord с экрана.