Вы действительно можете использовать оттенок как способ Изменение ImageView
«S Цвет, НО вам следует напомнить, что android:tint
всегда будет применяться на вершине оригинального цвета.
как заявил блоггер danlew
Оттенок
ImageView смешивает оттенок цвета с оригинальным активом. Вы хотите, чтобы цвет оттенка захватывал полностью; вместо этого применяет оттенок поверх существующего цвета. Так, например, если исходный ресурс черный, и вы хотите, чтобы это было # 77FFFFFF (полупрозрачный оттенок белого), вы фактически получите темный оттенок белого с черным фоном под ним.
android: оттенок ограничен ImageView. Вы хотите, чтобы можно было нарисовать любой Drawable в любом представлении.
Одна из возможных альтернатив было бы для вас использовать андроид ColorFilter
Согласно official documentation:
Цветной фильтр можно использовать с краской, чтобы изменить цвет каждого пиксель, нарисованный этой краской. Это абстрактный класс, который никогда не должен использоваться напрямую.
Есть много более или менее сложных вещей, которые вы можете сделать с ColorFilter, но как вы можете применить это?
Один простой example от другого так вопрос:
//White tint
imageView.setColorFilter(Color.argb(255, 255, 255, 255));
or
imageView.setColorFilter(ContextCompat.getColor(context,R.color.COLOR_YOUR_COLOR))
Или более полный ответ здесь в SO от here
ImageView redCircle = (ImageView) findViewById(R.id.circle_red_imageview);
ImageView greenCircle = (ImageView) findViewById(R.id.circle_green_imageview);
ImageView blueCircle = (ImageView) findViewById(R.id.circle_blue_imageview);
// we can create the color values in different ways:
redCircle.getDrawable().setColorFilter(Color.RED, PorterDuff.Mode.MULTIPLY);
greenCircle.getDrawable().setColorFilter(0xff00ff00, PorterDuff.Mode.MULTIPLY);
blueCircle.getDrawable().setColorFilter(getResources().getColor(R.color.blue), PorterDuff.Mode.MULTIPLY);
Вы должны проверить эти ссылки, если вы хотите узнать больше
SO - What is the difference between background, backgroundTint, backgroundTintMode attributes in android layout xml?
setColorFilter()
Fast Android asset theming with ColorFilter
SO-Modifying the color of an android drawable
@gnB Вы смогли решить вашу проблему? Я считаю, что этот ответ должен быть помечен как правильный, дайте мне знать, если это помогло =) – HenriqueMS
Это решение, определяющее цвет на Java, работало так же, как и с помощью 'android: tint'. Как и в случае с другим подходом, мне пришлось очистить/обновить проект, чтобы он работал. Спасибо за указатель и подробности – gnB
@gnB мое удовольствие! – HenriqueMS