当我使用“EditText”时,我有虚拟键盘。
第一次按“后退”按钮隐藏键盘。第二次按下在我的活动中调用“onBackPressed”回调。好的,但是......
我不知道如何勾选第一次按下。我需要在虚拟键盘解除后立即处理输入数据。
欢迎任何想法。
感谢。
答案 0 :(得分:19)
您可以使用此方法在键盘消失时覆盖:
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK &&
event.getAction() == KeyEvent.ACTION_UP) {
// Do your thing here
return false;
}
return super.dispatchKeyEvent(event);
}
取自我的其他答案@:Android: Error popup on EditText doesn't move down when keyboard goes away
答案 1 :(得分:0)
自定义后退按钮: -
final RelativeLayout rrBack = (RelativeLayout) mCustomView.findViewById(R.id.rr_back);
rrBack.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
MyApplication.getInstance().getRequestQueue().cancelAll(FEED_DETAIL_TAG_REQUEST);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(rrBack.getWindowToken(), 0);
}
});