Android:检测软键盘何时启用

时间:2015-08-10 11:18:47

标签: java android android-softkeyboard ime

我已经启动了ACTION_INPUT_METHOD_SETTING意图,该意图为用户提供了激活softInput(键盘)的可能性。当用户激活我想要的软输入/键盘时,我想关闭设置活动(我开始的意图)。

3 个答案:

答案 0 :(得分:1)

没有直接的方法可以确定它 - 请参阅http://groups.google.com/group/android-platform/browse_thread/thread/1728f26f2334c060/5e4910f0d9eb898a来自Android团队的Dianne Hackborn回复。但是,您可以通过检查#onMeasure中窗口大小是否更改来间接检测它。请参阅Android:Is software keyboard shown?

答案 1 :(得分:1)

我从post找到了Sujay的答案:

您可以从后台关闭所有活动,并在重新打开应用时从第一个活动开始

war

您可以从后台关闭所有活动,并在重新打开应用时从暂停活动[您关闭的地方]活动开始

this.finish();
Intent intent = new Intent(getApplicationContext(), CloseApp.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

答案 2 :(得分:0)

试试这个

   InputMethodManager imm  = (InputMethodManager)getActivity().getApplicationContext().getSystemService(    Context.INPUT_METHOD_SERVICE);
   Log.e(TAG, "Result :"+imm.isActive());