Подтвердить что ты не робот

Android: Удалить ключ ввода с панели инструментов

В моей форме входа, когда пользователь нажимает на EditText и нажимает клавишу ввода, это вставляет новую строку, поэтому увеличивается размер EditText. В следующий момент он вернется к своему предыдущему месту и распечатает точку в поле пароля (это следующее поле).

Я хочу удалить эту клавишу ввода с клавиатуры. Возможно ли это?

4b9b3361

Ответ 1

Боюсь, вы не сможете этого сделать. Но одно дело в том, что вы можете обрабатывать такие ключевые клавиши softkey, как это,

edittext.setOnKeyListener(new OnKeyListener() {

        public boolean onKey(View v, int keyCode, KeyEvent event) {


                if (event.getAction() == KeyEvent.ACTION_DOWN
                        && event.getKeyCode() ==       KeyEvent.KEYCODE_ENTER) {
                    Log.i("event", "captured");

                    return false;
                } 
                else if(event.getAction() == KeyEvent.ACTION_DOWN
                        && event.getKeyCode() == KeyEvent.KEYCODE_BACK){
                    Log.i("Back event Trigered","Back event");

                }

            }

            }
            return false;
        }
    });

Кроме того, вы должны заметить, что предоставление атрибута android:singleLine=true приведет к увеличению размера edittext при нажатии кнопки soft keyborad ENTER

Ответ 2

Использование: android:singleLine = "true" или    edittext.setSingleLine();

И ваш ключ ENTER ушел

Ответ 3

добавить этот тег в textView в xml

    android:singleLine = "true"

Ответ 4

Внутри тега EditText вам нужно только сделать:

android:singleLine="true"

удалите клавишу ввода на клавиатуре

ОБНОВЛЕНИЕ

Поскольку android:singleLine="true" устарел, я использую android:maxLines="1", чтобы избежать ввода в EditText. Как указано в названии метода, разрешены только строки N.