首页 > 解决方案 > 在PNG周围绘制彩色圆圈

问题描述

我在我的项目中使用这个 PNG(在我的资源范围内):

在此处输入图像描述

以编程方式,我想实现这一点:

  1. 将颜色更改为白色。
  2. 在图标周围添加一个纯色圆圈。

结果应该是这样的:

在此处输入图像描述

红色必须在运行时动态变化。我如何实现这一目标?

标签: android

解决方案


将此添加到您的 XML 文件中:

<ImageView
    android:id="@+id/image_view"
    android:layout_width="56dp"
    android:layout_height="56dp"
    android:background="@drawable/circle"
    android:padding="8dp"
    android:src="@drawable/bull_image"
    app:tint="@android:color/white" />

这是circle.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <solid
        android:color="@android:color/white"/>
</shape>

并动态更改背景颜色:

imageView.backgroundTintList = ColorStateList.valueOf(ContextCompat.getColor(this, R.color.your_color))

推荐阅读