我有一个简单的问题,但经过一段时间在互联网上搜索后我无法找到它。希望我能在这里得到答案。
我有一个edittext。每次关注此edittext时,都会显示虚拟键盘。但是,如果我点击了与edittext不同的其他地方,我想键盘将被隐藏。但事实并非如此。我不知道是否有任何像isUnfocus这样的事件或类似的事件,以便我可以隐藏虚拟键盘。
提前致谢。
答案 0 :(得分:2)
添加此行
android:windowSoftInputMode="stateHidden"
到您的 AndroidManifeast.xml <Activity></Activity>
标记。如果键盘可见,它会在屏幕中的任何位置单击时隐藏键盘。
答案 1 :(得分:1)
刚刚将setOnFocusChangeListener添加到Edittext,。
EditText editTextProfileName = (EditText) view
.findViewById(R.id.nameEditText);
editTextProfileName.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if (!hasFocus) {
hideKeyboard();
}
}
private void hideKeyboard() {
if (editTextProfileName != null) {
InputMethodManager imanager = (InputMethodManager) getActivity()
.getSystemService(Context.INPUT_METHOD_SERVICE);
imanager.hideSoftInputFromWindow(editTextProfileName.getWindowToken(), 0);
}
}
});