您好我在我的Android应用程序中使用文本编辑器。当我在android-softkeyboard中触摸输入键并且必须执行一个方法时,我希望光标移动到edittext中的下一行,所以我使用了setOnKeyListener()因为当我按下键时它转到这个方法并执行myMethod()。 我的主要问题是,当我使用它(edittext.setInputType(InputType.TYPE_CLASS_TEXT);)它进入setOnKeyListener()方法的代码行并执行myMethod但光标位置仍然在同一行,如果我删除了行光标位置正在更新(转到下一行)但是setOnKeyListener()没有执行。 请建议我如何处理它,我的代码是
edittext = (EditText) findViewById(R.id.editText);
edittext.setInputType(InputType.TYPE_CLASS_TEXT);
edittext.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// If the event is a key-down event on the "enter" button
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
Toast.makeText(MainActivity.this, edittext.getText(), Toast.LENGTH_SHORT).show();
myMethod();
return true;
}
return false;
}
});
提前致谢。
答案 0 :(得分:0)
尝试返回" false":
if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) {
Toast.makeText(MainActivity.this, edittext.getText(), Toast.LENGTH_SHORT).show();
myMethod();
return false; // here
}