Как центрировать значок в тексте редактирования?

avatar
WizardOfOz
1 июля 2021 в 21:27
50
2
0

У меня есть значок и подсказка в тексте редактирования, и я попытался центрировать содержимое текста редактирования по горизонтали, но, похоже, это работает только для подсказки, а не для значка. Значок находится ближе к нижней части текста редактирования.

это мой код

<EditText
            android:id="@+id/password_edittext"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Password"
            android:backgroundTint="@color/white"
            android:background="@drawable/edittext_background"
            android:inputType="textPassword"
            android:gravity="center_vertical"
            android:drawableStart="@drawable/ic_lock"
            />

Источник
Darkman
1 июля 2021 в 23:06
0

android:gravity="center_horizontal"?

Ответы (2)

avatar
Aryan
2 июля 2021 в 10:29
0

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

avatar
javdromero
1 июля 2021 в 21:43
0

Мне не удалось использовать свойство drawableStart, альтернативой является использование SpannableString и ImageSpan для установки подсказки по коду.

SpannableString string = new SpannableString(" Password");
string.setSpan(new ImageSpan(this, R.mipmap.ic_launcher), 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    
EditText password_edittext = findViewById(R.id.password_edittext);
password_edittext.setHint(string);

XML:

<EditText
        android:id="@+id/password_edittext"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:backgroundTint="@color/white"
        android:drawablePadding="10dp"
        android:gravity="center_horizontal"
        android:inputType="textPassword" />

enter image description here