我有一个框架布局,其中RecyclerView具有最高的重力,EditText具有底部的重力。 当我打开软键盘时,布局超出了状态栏。 我希望键盘推入仅EditText而不是整个布局。 这是我的setupDialog方法:
public void setupDialog(Dialog dialog, int style) {
super.setupDialog(dialog, style);
dialog.setContentView(bottomSheetBinding.getRoot());
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
dialog.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
BottomSheetDialog d = (BottomSheetDialog) dialog;
FrameLayout bottomSheet = (FrameLayout) d.findViewById(android.support.design.R.id.design_bottom_sheet);
BottomSheetBehavior.from(bottomSheet)
.setState(BottomSheetBehavior.STATE_EXPANDED);
}
});
}
我尝试了adjustPan和adjustResize,但是没有用。
答案 0 :(得分:0)
您应该改用以下行:
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE | WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);