我想编写代码只显示sdcard中特定文件夹的图像 . 例如一个名为(/ sdcard / folder /)的文件夹 . 我有以下代码,但它显示了SD卡中的所有图像 . 我应该在下面的代码中添加/更改什么来实现我的目标 .
我应该更改查询 . 如果是,我应该如何更改它 .
请帮我 . 谢谢
`
String[] img = { MediaStore.Images.Thumbnails._ID };
imagecursor = managedQuery(MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, img, null,null, MediaStore.Images.Thumbnails.IMAGE_ID + "");
image_column_index = imagecursor.getColumnIndexOrThrow(MediaStore.Images.Thumbnails._ID);
count = imagecursor.getCount();
imagegrid = (GridView) findViewById(R.id.sdcard);
imagegrid.setAdapter(new ImageAdapter(getApplicationContext()));
imagegrid.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView parent, View v,int position, long id) {
System.gc();
String[] proj = { MediaStore.Images.Media.DATA };
actualimagecursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, proj,null, null, null);
actual_image_column_index = actualimagecursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
actualimagecursor.moveToPosition(position);
String i = actualimagecursor.getString(actual_image_column_index);
System.gc();
Intent intent = new Intent(getApplicationContext(), ViewImage.class);
intent.putExtra("filename", i);
startActivity(intent);
}
});
`
2 回答
在上面一行,你只是传递你的SD卡路径(
MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI
) . 我建议为你的路径创建变量(card / newfolder /)并将其传递给managedQuery试试这个问题中的答案Using ImageGallery to display images from the SD card?
解析文件并获得所需内容 .