在我的应用程序中有一个 EditText
。我已经为这个 EditText
的 Activity 调用了 keypad show。键盘显示和工作正常。
目前,我必须按两次后退按钮,一次用于隐藏键盘,另一次用于执行某些任务(例如将数据保存到数据库)。我不想按两次后退按钮。强>
请指导我,或建议
这里有一些来自 onBackPressed()
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
hideKeypad();
//saving EditText data to db.
}
代码形式hideKeypad()
private void hideKeypad() {
InputMethodManager imm = (InputMethodManager)
getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext1.getWindowToken(), 0);
}
最佳答案
使用此方法与您已经完成的方法类似,但我稍作修改。注册主布局的监听器并将其对象作为参数传递,以便当您单击编辑文本的一侧时,即主布局键盘将消失。
/** Close Keypad on touch.
* @param view on which click happens. */
public void closeKeyPad(View view)
{
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
关于android - onBackPressed 方法无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15520107/