Android: Як перамяшчаць погляды над клавіятурай пры яе адкрыцці. (хуткае і бяспечнае рашэнне)
Крок 1:
Вам трэба мадэляваць .xml файл проста так:
................ віды ..................... ... прагляды, якія будуць ісці над клавіятурай ...
Як бачыце, у нас ёсць наступныя кампаненты:
- Каранёвая планіроўка: ConstraintLayout (можа быць адносная макет)
- Дзіця: NestedScrollView (можа быць просты ScrollView)
- NestedScrollView Child: ConstraintLayout (можа быць адносна макета)
- Знізу: LinearLayout (можа быць адносна макета / абмежавання)
Важна ўнесці ў код выдзеленыя вышэй радкі кода. Далей наступныя атрыбуты:
У NestedScrollView:
android: isScrollContainer = "true" прыкладанне: layout_constraintBottom_toTopOf = "@ + id / bottomContainer"
У LinearLayout:
app: layout_constraintBottom_toBottomOf = "бацькоўскі" дадатак: layout_constraintRight_toRightOf = "бацькоўскі"
УВАГА: Гэта працуе толькі ў тым выпадку, калі вы ўключылі кампанент NestedScrollView / ScrollView.
Крок 2 (першы варыянт):
Калі вы знаходзіцеся ў фрагменце, увядзіце гэты радок кода ў свой спосаб onCreate ():
getActivity (). getWindow (). setSoftInputMode (WindowManager.LayoutParam s.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
Калі вы займаецеся дзейнасцю, увядзіце гэты радок кода ў свой спосаб onCreate ():
getWindow (). setSoftInputMode (WindowManager.LayoutParam s.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
Крок 2 (другі варыянт):
Змесціце ў AndroidManifest.xml наступны радок у кампаненце актыўнасці:
УВАГА: Вашы прагляды будуць ісці над клавіятурай, толькі калі яны ўключаны ў бацькоўскі макет.
Спадзяюся, што гэта дапаможа,
шчаслівае кадаванне :)