Bitmap bm = BitmapFactory.decodeFile(lis.get(position).toString());
这时会出现bitmap size exceeds VM budget的错误,可能是图片占用太多的内存。
这时指定分配内存:
BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();
bitmapOptions.inSampleSize = 4;
Bitmap bm = BitmapFactory.decodeFile(lis.get(position).toString(),bitmapOptions);
这样程序便可以良好的运行了。