在android中动态获取R.drawable ID

时间:2012-02-24 17:52:18

标签: android resources android-image

我有一个包含几张图片的文件夹,这些图片是由用户动态添加的。所以我需要在android中获取这些图像的R.drawable ID .... ???

1 个答案:

答案 0 :(得分:0)

你还在哪里保存这些图片?在运行时动态添加图像时,通常需要将它们存储在手机存储上。如果您希望将图像存储在外部存储(SDCard)中,则可以使用以下代码检索它们并将它们添加到视图中(我假设您这样做)。此代码假定图像存储在您的设备SDCard中,这是它们将被拉出的位置。

//Get root directory of storage directory, pass in the name of the Folder if they are      being stored farther down, i.e getExternalFilesDir("FolderName/FolderName2")

String state = Environment.getExternalStorageState();

if (Environment.MEDIA_MOUNTED.equals(state)) {
// We can read and write the media


File dir = getExternalFilesDir(null);
    Bitmap bmap = null;
    try {
        InputStream is = new FileInputStream(new File(dir,"image.jpg"));
        bmap = BitmapFactory.decodeStream(is);
    } catch (FileNotFoundException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

    if (bmap!=null) {
        ImageView view = new ImageView(this);
        view.setImageBitmap(bmap);
    }
}