Android: singleline = true не работает для edittext

Я хочу ограничить запись edittext одной строкой, но когда я добавляю строку android:singleline = "true" , подсказка исчезает, и после ввода 26 символов курсор спускается.

Вот мой XML-код:

  <EditText android:background="@drawable/edittxtborder" android:id="@+id/reglastname" android:singleLine="true" android:gravity="center" android:hint="@string/reglname" android:textSize="12dp" /> 

Solutions Collecting From Web of "Android: singleline = true не работает для edittext"

Добавьте этот код в код edittext xml.

 android:ellipsize="end" 

Это сработает.

Я проверил ваш код, и проблема связана с Android: gravity = "center". Измените его на android: gravity = "left", и вы сможете увидеть подсказку.

Используйте значение для атрибута inputType кроме textMultiLine . Вход будет одной строкой. Атрибут singleLine устарел.

Вы можете использовать setMaxLines(int) для изменения номеров строк программно.

 EditText edit_field = new EditText(this); edit_field.setMaxLines(1); 

Вы можете отредактировать кнопку в коде напрямую, установив свой тип входа в TYPE_CLASS_TEXT. Это позволит вводить все типы символов, чисел и пространства, но не вводить. Таким образом, это ограничит его одной строкой.

 EditText editText = new EditText(this); editText.setInputType(InputType.TYPE_CLASS_TEXT); 

Вы также должны ограничить максимальное количество символов, которые могут быть введены в EditText. Это также можно сделать с помощью кода с использованием InputFilter и вызова метода setFilters для EditText с InputFilter.

Пожалуйста, используйте

 android:maxLines="1" 

вместо

 android:singleLine="true" due to deprecate