声明数组时Android中的java.lang.OutOfMemoryError

时间:2013-12-01 13:03:11

标签: java android

Bitmap bm = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() + 
        "/images/make_machine_example.jpg");    
int[] pixels = new int[bm.getWidth()*bm.getHeight()];           
_i.setImageBitmap(bm);

我似乎在像素数组声明中得到错误。

2 个答案:

答案 0 :(得分:0)

可能你的位图的宽度和/或高度太大了。尝试缩放位图,直到异常消失。使用Bitmap.createScaledBitmap()

答案 1 :(得分:0)

将你的位图缩放到手机的显示尺寸,我想原始图像是大的,所以你会得到OutOfMemoryException。

Bitmap.createScaledBitmap()将成为你的朋友。