Android - Как изменить размеры только определенных видов при изменении видимости клавиатуры - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть Активность с тремя Фрагментами, и они управляются вкладками внизу.

Один из фрагментов нуждается в клавиатуре, и поэтому я хотел бы изменить размер окна рециркуляции фрагментов, когда клавиатура видна,так что последний элемент в представлении рециркулятора виден над клавиатурой (после прокрутки).

Но если в AndroidManifest.xml, я указываю

android:windowSoftInputMode="adjustResize"

или

android:windowSoftInputMode="adjustPan"

Нижние вкладки также становятся видны над клавиатурой.

Я даже пытался использовать OnGlobalLayoutListener, чтобы проверить, когда клавиатура видна, а затем соответствующим образом отрегулировать высоту вида рециркулятора.Но это также не работает, так как OnGlobalLayoutListener вызывается только при использовании android:windowSoftInputMode="adjustPan" или android:windowSoftInputMode="adjustResize", что в данном случае противоречит цели.

Есть ли способ изменить размер / скорректировать представление фрагмента, но не вид деятельности (нижние вкладки)?

Спасибо

1 Ответ

0 голосов
/ 20 ноября 2018

Так вот как я это решил.

Изменения в клавиатуре принимаются в OnGlobalLayoutListener при

android:windowSoftInputMode="adjustPan"

И это также не толкает нижние вкладки над клавиатурой.

Таким образом, это решает проблему под рукой.

Спасибо

...