当我点击编辑框时,软键盘正在显示。但是当编辑框失去焦点时它没有隐藏。我正在app.i中使用片段尝试了以下代码来隐藏keyborad。
public void onActivityCreated(Bundle arg0) {
super.onActivityCreated(arg0);
_context = this.getActivity();
InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm != null)
imm.hideSoftInputFromWindow(getView().getWindowToken(), 0);
}
但是应用程序间歇性崩溃。下面给出了logcat错误。
05-04 18:22:15.540: E/AndroidRuntime(8152): java.lang.IllegalStateException: Recursive entry to executePendingTransactions
05-04 18:22:15.540: E/AndroidRuntime(8152): at android.support.v4.app.FragmentManagerImpl.execPendingActions(Unknown Source)
05-04 18:22:15.540: E/AndroidRuntime(8152): at android.support.v4.app.FragmentManagerImpl$1.run(Unknown Source)
请有人帮我做这个......
答案 0 :(得分:0)
我不知道为什么会崩溃。但是我找到了另一种实现方式。这是代码
public void onTabChanged(String tag) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mTabHost.getApplicationWindowToken(), 0);
}