複数行の EditText とボタンがあります。ボタンは永続的なボトムシートを表示します (モーダルはここでは行いません)。
ボトムシートは基本的に LinearLayout であり、appcompat ボトムシートに変換されます。
app:layout_behavior="@string/bottom_sheet_behavior"
XMLで。
ボタンを押すと、次のように表示されます。
View bottomSheet = context.findViewById(R.id._bottom_sheet);
BottomSheetBehavior behavior = BottomSheetBehavior.from(bottomSheet);
behavior.setState(BottomSheetBehavior.STATE_EXPANDED);
今、私はそれが予想される動作であることを知っています.一番下のシートがそこにあるものをすべてカバーしています(EditTextはフォーカスと選択を保持する必要があるため、モーダルにしたくありません)が、私の質問は:
常に「全体」が表示されるように、下のビューの EditText のサイズを変更する方法はありますか? キーボードを見せたときのようなもの。
(編集済み:元の質問ではパンが許可され、ビューの上部が非表示になります)
それとも、それを「通常の」ビューに変えて、ボタンのクリックで「現れる」ようにしたほうがいいですか?
あなたの洞察に感謝します。
Edit : また、Bottomsheet はメイン アクティビティで定義されているのに対し、EditText はフラグメント内の ViewPager で定義されていることにも言及する必要があります (これにより、サイズ変更が簡単ではなくなります)。