设置在android中按Enter键的操作

Set action for pressing Enter in android

本问题已经有最佳答案,请猛点这里访问。

我使用下面的代码作为我的编辑文本,这样当我按下输入时它不会转到新行,就像按下按钮一样,但它不起作用,有什么问题?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
editText.setOnEditorActionListener(new OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView arg0, int keyCode,
                KeyEvent event) {
            if (event.getAction() == KeyEvent.ACTION_DOWN) {
                switch (keyCode) {
                case KeyEvent.KEYCODE_ENTER:
                    search();
                    return true;
                default:
                    break;
                }
            }
            return false;
        }
    });


试试这个,它可能有所帮助

1
2
3
4
5
6
7
8
9
10
11
12
13
editText.setOnEditorActionListener(new EditText.OnEditorActionListener()
    {
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
        {
            if(actionId == EditorInfo.IME_ACTION_DONE)
            {
                search();
                return true;
            }
            return false;
        }

    });

XML EditText中添加

1
2
  android:maxLines="1"
  android:singleLine="true"

它将自动执行相同而不是转到新行。 Enter将表现为button