1. ホーム
  2. android

[解決済み】Android Studioでベクターアセットの塗りつぶし色を変更する。

2022-04-12 21:46:03

質問

Android Studioは21+でベクターアセットをサポートし、コンパイル時に下位バージョン用のpngを生成するようになりました。 ベクターアセット(Material Iconsから)を持っていて、塗りつぶしの色を変えたいと思っています。 これは21+で動作しますが、生成されたpngは色を変更しません。 これを行う方法はあるのでしょうか?

<vector android:height="48dp" android:viewportHeight="24.0"
android:viewportWidth="24.0" android:width="48dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@color/primary" android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z"/>

解決方法は?

ベクターアセットを直接編集しない。ImageButtonでベクターのdrawableを使っている場合は、色を選ぶだけでよい。 android:tint .

<ImageButton
        android:layout_width="48dp"
        android:layout_height="48dp"
        android:id="@+id/button"
        android:src="@drawable/ic_more_vert_24dp"
        android:tint="@color/primary" />