Изменить гравитацию изображения в текстовом представлении

Я добавил изображение Drawable начала в TextView . Проблема в том, что я не могу контролировать гравитацию этого Drawable в TextView .

Чего мне нужно достичь Чего мне нужно достичь

Чего я достиг на сегодня

Чего я достиг на сегодня

Это мой TextView

        <TextView
            android:id="@+id/tv_8_digit_check"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:drawablePadding="@dimen/dimen_4"
            android:drawableStart="@drawable/ic_validate"
            android:text="@string/at_least_8_characters_txt"
            android:textColor="@color/white_trans"
            android:textSize="12sp" />

Любое предложение о том, как я могу установить гравитацию этого Drawable на вершину / начало? Спасибо

5 ответов

Решение
  1. Попробуйте использовать android:gravity="top"

    если это не сработало, переходите с отрицательной маржи

  2. android:drawablePadding="-20sp"

  3. Другой альтернативный способ - взять ImageView рядом TextView внутри LinearLayout так что вы можете применить гравитацию

Используйте флажок вместо textview Drawable, и добавьте пользовательский drawable, где вы можете использовать это изображение

Я предлагаю вам поместить изображение в imageview. Поместите вид изображения и вид текста в линейную линейку и установите гравитацию на top, Уменьшите размер текста и изображения тоже.

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="top">

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="@dimen/dimen_4"
        android:src="@drawable/ic_validate"/>
    <TextView
        android:id="@+id/tv_8_digit_check"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/at_least_8_characters_txt"
        android:textColor="@color/white_trans"
        android:textSize="12sp" />

</LinearLayout>

Используйте флажок вместо текстового представления и отключите щелчок и фокус этого представления

      <CheckBox
        android:gravity="top"
        android:button="@drawable/ic_right_managed"
        android:clickable="false"
        android:focusable="false"
        text="I look like a check box but beware I'm not"/>
Другие вопросы по тегам