#android #android-studio #android-layout #android-widget #android-styles
Вопрос:
Я создаю виджет, но когда я добавляю app:tint="@color/white"
его, он показывает оттенок в предварительном просмотре дизайна, но когда виджет загружается, оттенок не применяется, значок все еще черный, мне нужно добавить белый оттенок в изображение.
<ImageView
android:id="@ id/imageView1"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_alignParentEnd="true"
android:elevation="10dp"
android:src="@drawable/ic_explore_01"
app:tint="@color/white" />
Ответ №1:
Откройте свой ic_explore_01
xml-файл и отредактируйте fillColor
, как показано ниже, фрагмент кода.
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="@color/white"
android:pathData="M3,13h8L11,3L3,3v10zM3,21h8v-6L3,15v6zM13,21h8L21,11h-8v10zM13,3v6h8L21,3h-8z" />
</vector>
Комментарии:
1. Это сработало, я использовал файл изображения png, я превратил его в векторное изображение и изменил цвет заполнения на белый, что сделало работу
2. !! Имейте в виду, что это всего лишь обходной путь; если вам нужно повторно использовать одно и то же изображение с разными цветами, это не поможет, вам придется дублировать изображение для каждого цвета.