单击Enter键打开另一个EditView的键盘

时间:2014-08-13 17:17:12

标签: android keyboard editview

当我点击Enter键时(当我在第一个EditView中时),我想打开另一个EditView的键盘(而不是我正在使用的键盘)。

场景应该是这样的: 我在第一个EditView的键盘上写了一些东西,我已经完成了,所以我按下“Enter”键,然后打开第二个EditView的键盘。

我试过不同的代码,但没有成功,如果有人能帮助我的话。

3 个答案:

答案 0 :(得分:0)

如果我理解这里是答案

editText.setImeOptions(EditorInfo.IME_ACTION_NEXT);

答案 1 :(得分:0)

按Enter键后,您基本上想要将焦点从1 EditText切换到另一个。

这可以通过在第一个EditText上设置'setNextFocusDownId'选项来轻松完成。

firstEditText.setNextFocusDownId(R.id.secondEditTextId);

答案 2 :(得分:0)

通过搜索' setNextFocusDownld'像Kasper建议的那样,使用这个答案:Android Softkey's next button not taking focus to spinner

我使用的代码是:

mEditText.setNextFocusDownId(R.id.textView2b);
        mEditText.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)) {
                    // Perform action on Enter key press
                    mEditText.clearFocus();
                    mEditText2.requestFocus();
                    return true;
                }
                return false;
            }
        });
        mEditText2.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)) {
                    // Perform action on Enter key press
                    mEditText2.clearFocus();
                    InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                    imm.hideSoftInputFromWindow(mEditText2.getWindowToken(), 0);
                    return true;
                }
                return false;
            }
        });