具有平方像素的ImageView(无插值)

时间:2012-05-03 23:54:21

标签: java android bitmap

我有一个9X11像素的位图,代表迷宫,路径为绿色,墙壁为黑色,橙色和蓝色开始。

矩阵是:

int[][] map = new int[][] { 
            { 1, 1, 1, 1, 1, 1, 1, 1, 1 }, 
            { 0, 0, 1, 0, 0, 0, 0, 0, 1 },
            { 1, 1, 1, 1, 0, 1, 1, 0, 1 }, 
            { 1, 1, 1, 1, 1, 1, 1, 0, 0 },
            { 1, 0, 0, 0, 0, 1, 0, 0, 0 }, 
            { 1, 1, 1, 1, 0, 1, 1, 1, 1 },
            { 1, 1, 1, 1, 0, 1, 0, 0, 1 }, 
            { 1, 1, 1, 1, 0, 1, 0, 0, 1 },
            { 1, 1, 1, 1, 0, 1, 0, 0, 1 }, 
            { 1, 1, 1, 1, 0, 1, 0, 0, 0 },
            { 1, 1, 1, 1, 0, 1, 1, 1, 1 }, };

问题是当我在ImageView(fill_parent,fill_parent)中绘制位图时,结果是: enter image description here

如何保持像素的平方?

注意:我使用

创建位图
 Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

并使用方法

设置像素
 bitmap.setPixel(x,y,Color.XXX);

1 个答案:

答案 0 :(得分:3)

如果你想在不使用抗锯齿的情况下缩放图像视图,你真正需要做的就是获得一个BitmapDrawable。例如:

BitmapDrawable bd = new BitmapDrawable(activity.getResources(), bitmap);
bd.setAntiAlias(false);