安卓事件当键盘关闭返回按钮点击
问题描述:
在我的情况下,我有一个EditText获得焦点。当我使用后退按钮关闭键盘时,我想捕捉该事件并执行一些操作,例如将焦点放在另一个视图上。安卓事件当键盘关闭返回按钮点击
如何获取键盘onclose事件?
答
有软键盘的背部。我已经使用这个代码片段,hnestly我已经从那里:(
final View activityRootView = findViewById(R.id.loging_rootview);
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(
new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
int heightDiff = activityRootView.getRootView()
.getHeight()
- activityRootView.getHeight();
if (heightDiff > 138) { // if more than 100 pixels, its
// probably a keyboard...
logo.setVisibility(View.GONE);
} else {
logo.setVisibility(View.VISIBLE);
}
}
});
答
忘记你可以得到回报按钮
editText.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// You can identify which key pressed buy checking keyCode value
// with KeyEvent.KEYCODE
if (keyCode == KeyEvent.KEYCODE_ENTER && KeyEvent.ACTION_DOWN == vent.getAction()) {
// YOUR CODE HERE
}
return false;
}
});
编辑:
没有发生事件当软键盘隐藏时 看到这个Question将帮助你解决你的问题
但这不适用于硬件后退按钮 – Anthea
@Anthea看到我编辑的答案 – MAC