Android ImageView with PixelArt



我想在ImageView中显示像素,但它一直变得模糊。我试过了,就像这篇文章(和其他一些文章(中解释的那样,我也试过了createScaledBitmap函数,就像你在代码中看到的那样。但它仍然变得模糊。我还能做些什么来正确显示我的PixelArt?

var bitmap = Bitmap.createScaledBitmap(fu, 120, 120, false)
var drawable = BitmapDrawable(context.resources, bitmap)
drawable.setAntiAlias(false)
drawable.setFilterBitmap(false)
myImageView.setImageDrawable(drawable )

(Imageview在RecyclerView中,但我认为这对我的问题不重要。(

在禁用过滤之前,您正在放大图像,因此它看起来仍然经过过滤。将小精灵放大为大位图也会浪费内存。

你不需要像那样手动缩放。您可以在ImageView上设置drawable(可以在XML布局中分配它,也可以在它上调用setImageResource(。然后将isFilterBitmap设置为false。

myImageView.setImageResource(R.drawable.mySprite) // if not already set in XML
myImageView.drawable?.isFilterBitmap = false

最新更新