【发布时间】:2023-04-09 17:01:01
【问题描述】:
我有以下LinearLayout:
<LinearLayout
android:id="@+id/like_button"
android:clickable="true"
android:layout_width="wrap_content"
android:layout_height="36dp"
android:layout_marginRight="15dp"
android:gravity="center">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginRight="15dp"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:src="@drawable/ic_like"
/>
<TextView
android:id="@+id/num_likes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="14sp"
/>
</LinearLayout>
ic_like drawable 只是一个灰色的竖起大拇指图标。有没有办法在特定状态下更改图标的颜色,而无需提供不同颜色的相同图标 PNG,而是提供要更改为图标的十六进制颜色值?
例如,我如何创建一个状态列表,如果单击图标,图标的颜色会变为红色?
【问题讨论】:
-
见
Drawable#setColorFilter -
我将如何创建不同的状态(因为据我所知,它们通常设置在单独的 XML 布局中)?
-
我认为 Fontastica 可以帮助你github.com/Tawreh/fontastica
-
只要你想改变颜色就打电话
setColorFilter
标签: android android-layout android-xml