Search code examples
androidandroid-linearlayouttextviewandroid-drawable

Resize drawable image in TextView android


Wonder how to resize an image inside a TextView xml in a LinearLayout. I read some solution using setCompoundDrawablesWithIntrinsicBounds method, but cannot get it right.

Here is the image:

enter image description here

I want to reduce the size of the logo.

Here is my TextView code:

<TextView  
    android:id="@+id/heading"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/android_logo"
    android:drawableStart="@drawable/android_logo"
    android:gravity="top"
    android:padding="16dp"
    android:singleLine="true"
    android:text="@string/heading"
    android:textSize="20dp"
    android:drawablePadding="5dp"/>

Solution

  • Try :

     android:scaleX="0.7"
     android:scaleY="0.7"
    

    OR

    Wrap your resource in a drawable that defines your desired size similar to:

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    
      <item
          android:drawable="@drawable/icon"
          android:width="@dimen/icon_size"
          android:height="@dimen/icon_size"
          />
    
    </layer-list >
    

    then use it in drawable left.