У меня есть приложение, которое имеет 4 Fragment
s (отображается как вкладки), и все они имеют один и тот же раздел Action Bar
. Верхняя панель имеет кнопки вкладок, а нижняя панель имеет кнопки действий. Есть один Fragment
, который имеет EditText
наверху и ListView
под ним.
Теперь проблема с клавиатурой в этом Fragment
является:adjustResize: попытка не отображать нижнюю панель разделительной панели действий при открытии клавиатуры
, если я использую adjustPan
, чтобы сделать клавиатуру покрывают нижнюю планку, то ListView
не получает изменен, так что некоторые из его элементов покрываются с помощью клавиатуры и Я не могу прокрутить их;
, если я использую adjustResize
, размер ListView
действительно изменяется, но нижняя панель, конечно же, раздвигается. Я не хочу этого.
Что мне нужно, так это то, что нижняя панель закрыта клавиатурой. И ListView
получает размер, чтобы я мог видеть все его элементы с помощью прокрутки.
В то же время я собираюсь использовать adjustPan
и отменить клавиатуру, когда пользователь коснется ListView
, но я хотел бы найти способ сделать то, что я объяснил выше.
Неплохо ли пытаться изменить размер ListView
при появлении клавиатуры (при использовании adjustPan
)? Или есть способ скрыть (с setVisibility(View.GONE)
или что-то) в нижней панели при использовании adjustResize
? И, наконец, есть ли простой способ понять, когда появляется клавиатура, и получить ее высоту?
Спасибо за помощь.
P.S. Я уже нашел несколько подобных вопросов, и ни одно из них не имеет решения.
спасибо, я завтра заглянем в него. Кстати, моя нижняя строка не является представлением, которое я определил в XML-файле, но он создан, потому что я использую ActionBar, и я установил 'android: uiOptions =" splitActionBarWhenNarrow "' в элементе основного действия в манифесте приложения. Я не знаю, как получить ссылку только на нижнюю часть, но я рассмотрю ее. – nonzaprej