繁体   English   中英

Android:如何在 Kotlin 中对 Drawable/Bitmap 应用色调?

[英]Android: How can I apply a tint to a Drawable/Bitmap in Kotlin?

我想创建一个使用有色图标的快捷方式,所以我不能只为 ImageView 添加一个色调。 我是这样做的:

val drawableExample: Drawable
val colorExample: Int

drawable?.colorFilter = PorterDuffColorFilter(colorExample, PorterDuff.Mode.SRC_IN)

val icon: Icon = Icon.createWithBitmap(drawable?.toBitmap(256, 256, null))

如果您的源图像已经是 Bitmap,请参阅接受的答案以获取有关如何执行此操作的详细信息。 它让我找到了适合我的稍微简单的解决方案。

您可以使用colorFilter

val paint = Paint()
paint.setColorFilter(PorterDuffColorFilter(targetColor, PorterDuff.Mode.SRC_IN))
canvas.drawBitmap(resource, matrix, paint)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM