我创建了一个登录活动。在登录屏幕中,密码editText带有一个带有"登录"键的键盘。当我按下这个键时,键盘会隐藏起来,但不会发生任何动作。我已经覆盖了onKeyDown(),并假定该键为enter。但是仍然没有进行登录操作
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_ENTER:
{
//your Action code
if (DeviceUtil.isNetworkAvailable(LoginActivity.this)) {
authenticate(muserName.getText().toString(), mpwd.getText().toString());
} else {
showMessage("Network Not Available!");
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}
有人能建议我在这里能做什么吗?
将onKeyListener
设置为按键时要聚焦的视图。例如,如果您的视图的id为password
,则需要执行以下操作:
findViewById(R.id.password).setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) {
//Your code
return true;
}
return false;
}
});