从外部存储读取图像文件并放入ImageView

时间:2013-11-17 17:08:15

标签: java android bitmap android-imageview android-external-storage

我的情况是需要使用用户外部存储目录中的图像填充图像视图;我一直在使用Bitmap Factory解码文件,然后相应地设置图像视图位图,但我一直遇到Null Pointer Exceptions。

String path = Environment.getExternalStorageDirectory()+ "/Pictures/test.jpg";
File imgFile = new File(path);

    if(imgFile.exists()){
        Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
        ImageView imgView = (ImageView)findViewById(R.id.imageView2);
        imgView.setImageBitmap(myBitmap);
    } else {
        Log.d("Ciaren", "File doesn't exist");
    }

我在OnCreate中直接运行它,并且图像视图应该是全屏的,我不能为我的生活弄清楚什么是抛出一个空物体,因为我已经介入并且一切似乎都很好,当setImageBitmap()时抛出空指针;方法被称为。

1 个答案:

答案 0 :(得分:1)

imgView.setImageBitmap(myBitmap)中抛出错误;因此imageView为null。因此,找不到您的imageView。确保资源ID为R.id.imageView2是正确的。有时候日食和项目存在问题>清洁也可以解决这个问题。