使用外部图像作为可绘制资源

时间:2016-01-07 17:33:12

标签: java android android-resources android-external-storage

所以我在外部SD卡上保存了一张图像。现在,我想将该图像用作项目中的资源。 (我想使用位于特定路径的图像而不是R.drawable.image)。

如果有一种方法可以将图像“添加”到资源(而不仅仅是使用它),那么图像就会像R.drawable中的那样获得像resourceID这样的东西。

但基本上我只是想在imageView中显示外部图像。

3 个答案:

答案 0 :(得分:2)

首先,您需要阅读外部存储权限

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

然后,

String imagePath = Environment.getExternalStorageDirectory().getAbsolutePath() +"directoryName/imageName.png";
    Bitmap bitmap = BitmapFactory.decodeFile(imagePath);
    ImageView imageView = (ImageView)findViewById(R.id.imageview);
    imageView.setImageBitmap(bitmap);

答案 1 :(得分:0)

使用以下代码。

File file = new File("put your bitmap address here");
Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath());

答案 2 :(得分:0)

无法在运行时将任何文件添加到应用包(apk文件)。如果您想在可绘制文件夹中添加图像,则应在打包前添加该图像。

String path = "path-to-image";
Bitmap bitmap = BitmapFactory.decodeFile(path);
Drawable drawable = new BitmapDrawable(bitmap); //if you want a drawable