在sd卡的imageview中显示高清图像

时间:2015-01-21 08:01:19

标签: android android-layout android-imageview

我只是制作一个简单的程序,显示手机的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时。它显示没有任何问题。所以请帮助我。

1 个答案:

答案 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);
}