我正在尝试做一些应该足够简单的事情,但我的状态非常糟糕,因为我找不到任何一个有效的答案。
有没有办法获取(或构建)您在所有 Android 设备中找到的基本图库。扫描 SD 卡中的所有图片并在屏幕上左右滑动显示它们的简单方法......
我唯一找到的是HelloGallery;完全无用的谷歌代码将使用基于 r.drawable.xxx 文件的适配器......
除了基于 MediaStore 的 URI 之外,没有什么可以做同样的事情吗?
谢谢,对不起,如果这是一个非常愚蠢的问题。
我正在尝试做一些应该足够简单的事情,但我的状态非常糟糕,因为我找不到任何一个有效的答案。
有没有办法获取(或构建)您在所有 Android 设备中找到的基本图库。扫描 SD 卡中的所有图片并在屏幕上左右滑动显示它们的简单方法......
我唯一找到的是HelloGallery;完全无用的谷歌代码将使用基于 r.drawable.xxx 文件的适配器......
除了基于 MediaStore 的 URI 之外,没有什么可以做同样的事情吗?
谢谢,对不起,如果这是一个非常愚蠢的问题。
这简化了从 sdcard 扫描图像,获取所有图像 uri。你必须创建画廊类及其适配器类。如果你想左右滑动,在适配器类中采用一个布局,两者都是填充父级,并放置一个图像在该布局的中心或给图像填充父级。我在下面的情况下也有评论,也可以检查它..
public ArrayList<String> getAllImagesUri(ContentResolver mResolver) {
ArrayList<String> imagesUris = new ArrayList<String>();
try{
// Cursor mCursor = mResolver.query(
// MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
// new String[] { MediaStore.Images.ImageColumns.DATA,MediaStore.Images.Media._ID }, null, null,
// null);
Cursor mCursor = mResolver.query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
new String[] {MediaStore.Images.Thumbnails.DATA ,MediaStore.Images.Thumbnails._ID }, null, null,
null);
startManagingCursor(mCursor);
if (mCursor.moveToFirst()) {
do {
try {
imagesUris.add(mCursor.getString(0));
imagesIds.add(mCursor.getString(1));
} catch (Exception e) {
e.printStackTrace();
}
} while (mCursor.moveToNext());
}
}catch (Exception e)
{
e.printStackTrace();
// TODO: handle exception
}
return imagesUris;
}