先看效果图片:

动态修改图片颜色_android

根据需求,为同一张图片设置不同的颜色,下面来看完成的方法,在相应的代码处添加以下代码( iv_type 为一个 ImageView):

iv_type.setColorFilter(Color.parseColor("#FF333333"));

如果不需要动态设置,也可以在相应的 xml 文件中 ImageView 属性中添加下面代码:

android:tint="#FF333333"

这样就可以完成上面根据不同的颜色,设置不同的图片背景色了。

下面是 ImageView 如何显示字体,让一个 ImageView 和 TextView 完全重合就可以了:

<RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/iv_type"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBottom="@+id/tv_type"
                android:layout_alignLeft="@+id/tv_type"
                android:layout_alignRight="@+id/tv_type"
                android:layout_alignTop="@+id/tv_type"
                android:scaleType="fitXY"
                android:src="@drawable/room_type_icon" />

            <TextView
                android:id="@+id/tv_type"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="1dp"
                android:paddingLeft="3dp"
                android:paddingRight="15dp"
                android:paddingTop="1dp"
                android:textColor="#FFFFFFFF"
                android:textSize="10dp" />

        </RelativeLayout>