Оба одинаковы. Любое из нижеприведенного вы можете использовать
(1)
fun setDrawableTintColor(drawable: Drawable?, @ColorInt tintColor: Int) {
drawable?.let {
drawable.mutate()
if (tintColor != COLOR_NO_TINT) {
drawable.setColorFilter(tintColor, PorterDuff.Mode.SRC_IN)
} else {
drawable.clearColorFilter()
}
}
}
(2)
fun setDrawableTintColor(drawable: Drawable?, @ColorInt tintColor: Int) {
drawable?.let {
it.mutate()
if (tintColor != COLOR_NO_TINT) {
it.setColorFilter(tintColor, PorterDuff.Mode.SRC_IN)
} else {
it.clearColorFilter()
}
}
}
(3)
fun setDrawableTintColor(drawable: Drawable?, @ColorInt tintColor: Int) {
drawable?.let { drawableRes ->
drawableRes.mutate()
if (tintColor != COLOR_NO_TINT) {
drawableRes.setColorFilter(tintColor, PorterDuff.Mode.SRC_IN)
} else {
drawableRes.clearColorFilter()
}
}
}