Android从SDCard中选择图像ID并将其设置为ImageView

时间:2011-07-16 14:50:43

标签: android image mediastore

所以,基本上,我正在尝试从SDCARD中的图像更改ImageView。

以下是我的一些代码:

String[] images = {MediaStore.Images.Thumbnails._ID};
                Cursor cc = context.getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
                        images,
                        null,
                        null,
                        MediaStore.Images.Thumbnails.IMAGE_ID);  
                startManagingCursor(cc);  
                photo.setImageURI(Uri.withAppendedPath(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, <image ID>));

令我困惑的是如何检索图像ID ...正如您所看到的,Uri.withAppendedPath()需要图像ID ...

如果有人可以为我提供示例代码,我会很感激。

THX

1 个答案:

答案 0 :(得分:2)

这有帮助吗?

    String[] images = {MediaStore.Images.Thumbnails._ID};
    Cursor cc = context.getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
                    images,
                    null,
                    null,
                    MediaStore.Images.Thumbnails.IMAGE_ID);  

    if (!cc.moveToFirst())
        return null;

    String imgId = imgCursor.getString(cc
            .getColumnIndex(BaseColumns._ID));

    Uri uri = Uri.withAppendedPath(
            MediaStore.Images.Media.EXTERNAL_CONTENT_URI, imgId);
    photo.setImageURI(uri);