我有一个简单的问题,但是在互联网上搜索了一段时间后,我在任何地方都找不到。希望我能在这里得到答案。
我有一个编辑文本。每次当这个edittext被聚焦时,虚拟键盘就会显示出来。但是,如果我单击不同于edittext 的其他位置,我想键盘将被隐藏。但它没有。我不知道edittext是否有类似isUnfocus或类似的事件,以便我可以隐藏虚拟键盘。
提前致谢。
我有一个简单的问题,但是在互联网上搜索了一段时间后,我在任何地方都找不到。希望我能在这里得到答案。
我有一个编辑文本。每次当这个edittext被聚焦时,虚拟键盘就会显示出来。但是,如果我单击不同于edittext 的其他位置,我想键盘将被隐藏。但它没有。我不知道edittext是否有类似isUnfocus或类似的事件,以便我可以隐藏虚拟键盘。
提前致谢。
添加这一行
android:windowSoftInputMode="stateHidden"
到您的AndroidManifeast.xml <Activity></Activity>
标记。如果键盘可见,它会在单击屏幕中的任意位置时隐藏键盘。
刚刚将 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);
}
}
});