在imageview中设置色彩后如何以编程方式更改色彩

时间:2019-05-09 20:27:28

标签: android

我在Imageview xml中用色调模式设置了色调颜色,我只想在按钮单击中从Java更改色调颜色。我尝试过

imageView.getBackground().setColorFilter(ContextCompat.getColor(MainActivity.this,R.color.blueish), PorterDuff.Mode.MULTIPLY); 

但是它给了例外,我也尝试了

imageView.setColorFilter(ContextCompat.getColor(MainActivity.this, R.color.blueish), android.graphics.PorterDuff.Mode.MULTIPLY);

但什么也没发生

这是我的xml代码

    <ImageView
    android:id="@+id/imageview"
    android:layout_width="match_parent"
    android:tintMode="multiply"
    android:tint="#ffae"
    android:layout_height="580dp"
    android:src="@drawable/as"/>

1 个答案:

答案 0 :(得分:0)

您可以使用以下方法设置ImageView的色调:

ImageViewCompat.setImageTintList(imageview, ColorStateList.valueOf(resources.getColor(R.color.red)));