Pull to refresh

Android — background / backgroundTint / backgroundTintMode vs tint / tintMode

by Dolgo.Polo Dev

Овладев этими параметрами View, вы перестанете хранить несколько экземпляров иконок, покрашенных в разные цвета, и сэкономите время на создании одинаковых по форме, но отличающихся по цвету drawable-ресурсов

android:background = цвет, картинка, иконка, фигура или селектор, описанный в xml-файле

android:backgroundTint = цвет, который будет накладываться на background

android:backgroundTintMode = способ смешения цветов

Например, выбрав tintMode, можно определить, будут ли смешиваться альфа-каналы (прозрачность) заданного цвета и ресурса из background.


Также можно задать tintMode, который позволит полностью игнорировать исходный цвет ресурса, заданного в поле background.

Но перекрашивать можно не только background. Например, можно менять цвет ресурса, заданного атрибутом android:src

В этом случае нам понадобятся:

android:tint — цвет, который будет накладываться на src
android:tintMode — способ смешения цветов

Если минимальная версия sdk не позволяет использовать эти атрибуты, можно установить их через библиотеку AppCompat — достаточно заменить префикс android на app (например, app:tintMode)

Вывод: не стоит дублировать ресурсы одной формы — можно хранить их в одном экземпляре, например, черного цвета, а там где нужно — перекрашивать его

остальные посты в tg

Tags:
Total votes 4: ↑3 and ↓1+2
Comments0

Articles