在android中,BitmapFactory.decodeFile不起作用

时间:2017-06-30 15:23:00

标签: android

我使用以下代码在SD卡中获取图像,然后通过ImageView显示图像:

Bitmap bmp = BitmapFactory.decodeFile(imgUri.getPath());
img.setImageBitmap(bmp);

然而,没有显示任何内容。 我用这种方式编辑了AndroidManifest.xml:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

但这不起作用。 现在我知道程序没有读取SD卡中的图像。我该如何解决这个问题? Ps:我使用的手机是RedMi 4X,操作系统是MIUI8。

1 个答案:

答案 0 :(得分:1)

因为file://content://使其不正确。试试这个:

Uri uri;
Context context;
try {
    Bitmap bmp = BitmapFactory.decodeStream(context.getContentResolver().openInputStream(imgUri));
img.setImageBitmap(bmp);
} catch (FileNotFoundException e) {
    e.printStackTrace();
}