背景信息:我正在使用PreferenceFragment
和Activity
(Android 4.4.2 - API 19)处理设置。
问题:在EditTextPreference
生成的对话框中单击“确定”时,软键盘保持打开状态。
尝试的解决方案:手动关闭片段内的软键盘onSharedPreferenceChanged
。如果用户更改并确认文本,则仅有效。如果用户取消,则不正常工作。它还会产生另一个问题:当用户按完成时,更改文本,关闭键盘,但保持对话框打开
问题:当用户取消,确认或按完时,如何关闭键盘和对话框,这是一个非常好的正常和预期的行为。
答案 0 :(得分:0)
你可以试试这个:
View view = this.getCurrentFocus();
if (view != null) {
InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
强制Android使用InputMethodManager隐藏虚拟键盘。
答案 1 :(得分:0)
我遇到了同样的问题。检查你是否有
android:windowSoftInputMode="stateHidden"
AndroidManifest.xml 中 <activity>
标记中的属性
尝试删除此字符串。这对我有帮助