在我的android应用中,我需要在图像资源中设置背景。尝试执行此操作时,图像周围的空间也会采用背景,但我希望图像背景仅在图像内部。
<ImageView
android:id="@+id/pen"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5px"
android:src="@drawable/pencil"
android:background="#000"
android:layout_toRightOf="@id/upcount"/>
我也尝试以编程方式进行操作,但得到的结果相同
pen.setBackgroundColor(Color.rgb(100, 100, 50));
这是我尝试实现的示例。让背景只在铅笔上
答案 0 :(得分:0)
这在Android中称为“色调”。您可以使用android:tint
属性。在“图像”上设置色彩时,图像的颜色会更改。
<android.support.v7.widget.AppCompatImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher_foreground"
android:tint="@color/colorAccent"/>
使用AppCompatImageView
在旧版Android上更好地支持色调。
您可以通过this answer.
以编程方式进行设置
imageView.setColorFilter(Color.argb(255, 255, 255, 255));