我只是制作一个简单的程序,显示手机的SD卡中的高清图像。我的代码就是这个
ImageView iv=(ImageView)findViewById(R.id.imageView1);
File f = new File("/sdcard/mytestdownloadedfile2.jpg");
Bitmap bmp = BitmapFactory.decodeFile(f.getAbsolutePath());
iv.setImageBitmap(bmp);
当我运行我的代码时,它不会显示任何图像,但是当我将这张高清照片更改为standered photo或png时。它显示没有任何问题。所以请帮助我。
答案 0 :(得分:0)
尝试使用此方法解码文件,让我知道它是否有效
public static Bitmap decodeScaledBitmapFromSdCard(String filePath,
int reqWidth, int reqHeight) {
// First decode with inJustDecodeBounds=true to check dimensions
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(filePath, options);
// Calculate inSampleSize
options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
// Decode bitmap with inSampleSize set
options.inJustDecodeBounds = false;
return BitmapFactory.decodeFile(filePath, options);
}