在我的场景中,我有一个获得焦点的EditText。当我使用后退按钮关闭键盘时,我想抓住那个事件并做一些事情,比如将焦点放在另一个视图上。
如何获得键盘onclose事件?
答案 0 :(得分:1)
软键盘有回音。我已经使用了这段代码片段,说实话,我忘了从哪里:(
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);
}
}
});
答案 1 :(得分:1)
您可以返回按钮
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将帮助您解决问题