Я создал BottomSheet
используя фрагмент. Мой фрагмент содержит EditText
. Клавиатура открывается автоматически, когда EditText находится в фокусе, но она не закрывается / скрывается автоматически, когда она не в фокусе. Я хочу скрыть / закрыть клавиатуру, когда нажимаю за пределами фрагмента BottomSheet
. Как мне это выяснить?
Это мой класс фрагмента
public class ListItemInputFragment extends BottomSheetDialogFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final EditText newTaskEt, detailsEt;
final TextView savBtn;
View view = inflater.inflate(R.layout.fragment_list_item_input, container, false);
newTaskEt = view.findViewById(R.id.new_task_et_id);
detailsEt = view.findViewById(R.id.details_et_id);
savBtn = view.findViewById(R.id.save_btn_id);
InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);
imm.hideSoftInputFromWindow(newTaskEt.getWindowToken(), 0);
saveButtonClick(savBtn);
return view;
}
private void saveButtonClick(View view) {
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity().getBaseContext(), "Data Saved.", Toast.LENGTH_SHORT).show();
}
});
}
}