0
alertDialog 안에 editText가 있습니다. alertDialog 바깥을 클릭하면 닫힙니다. 그러나 키보드는 해산되지 않습니다. 포커스 변경 리스너가 edittext에 포커스가 없으면 키보드를 닫을 때 텍스트를 편집하도록 설정했습니다.경고 대화 상자가 닫히기 전에 SoftInputKeyboard를 닫는 방법
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
setClearIconVisible(isNotEmpty(getText()));
mInputMethodManager.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
} else {
setClearIconVisible(false);
mInputMethodManager.hideSoftInputFromWindow(this.getWindowToken(), 0);
}
}
하지만 대화 상자를 탭하여 닫으면됩니다. onFocusChange의 다른 부분에있는 코드는 히트하지 않습니다. 누군가 도와 줄 수 있습니까?
내가 그 일을 시도해 봤어을 취소 할 때으로 onCancel 리스너를 설정할 수 있습니다. onCancel, mEditText.clearFocus()를 수행하고 있습니다. mInputMethodManager.hideSoftInputFromWindow (this.getWindowToken(), 0)를 차례로 호출합니다. 하지만 나는 alertDialog가 해제되면 editText가 보이지 않으므로 키보드를 숨기지 않는다고 생각합니다. – user2991413
키보드 숨기기는 다소 까다 롭습니다. 키보드를 숨기려면 어떤 방법을 사용합니까? 이게 도움이 되나요? - https://gist.github.com/yccheok/cf4da9f2e0fa1b1d329d3f72d727696b –