Android EditText выравнивание вправо не работает должным образом
Это мой код:
<EditText
android:layout_width="@dimen/edittext_width"
android:layout_height="@dimen/edittext_height"
android:gravity="right|center_vertical"/>
Я хочу, чтобы текст шел справа, поэтому я добавляю этот код: android:gravity="right"
,
Проблема в том, что курсор всегда остается справа. Прикрепление снимков экрана:
С гравитацией справа -
Без гравитации справа -
На самом деле я хочу, чтобы это было как первое изображение и последнее изображение.
Любая помощь?
3 ответа
Попробуй это.
android:gravity="right"
android:textAlignment="gravity"
Это может быть вызвано из-за устройств или эмуляторов клавиатуры Locale
, Если он установлен на язык, который не справа налево, он может переопределить (кто-то поправит меня, если я здесь не прав).
Android предлагает поддержку языков с написанием справа налево, начиная с Android 4.2. Смотрите эту статью в блоге разработчиков Android.
С несколькими простыми изменениями ваше приложение будет автоматически зеркально отображено, когда пользователь переключает системный язык на скрипт справа налево (например, арабский, иврит или персидский).
Чтобы воспользоваться зеркалированием макета RTL, просто внесите следующие изменения в свое приложение:
Объявите в манифесте своего приложения, что ваше приложение поддерживает зеркалирование RTL. В частности, добавьте android:supportRtl="true" к элементу в вашем файле манифеста.
Измените все свойства макета "влево / вправо" вашего приложения на новые эквиваленты "начало / конец". Если вы нацеливаете свое приложение на Android 4.2 (targetSdkVersion или minSdkVersion приложения равно 17 или выше), вам следует использовать "start" и "end" вместо "left" и "right". Например, android:paddingLeft должен стать android:paddingStart. Если вы хотите, чтобы ваше приложение работало с версиями, более ранними, чем Android 4.2 (targetSdkVersion или minSdkVersion версии приложения равно 16 или меньше), вам следует добавить "начало" и "конец" в дополнение к "влево" и "вправо". Например, вы бы использовали android: paddingLeft и android:paddingStart.