您的位置:首页 > 移动开发 > Android开发

Android 从相册选取多张照片

2016-08-23 20:37 363 查看
你们会觉得这没什么好讲的,一般都导入相应的项目就ok了,但我个人觉得,这会造成很多无用代码。于是乎,我又去看源码,了解思想后,这次自己写了项目,先说说思想及注意事项:

1.通过ContentResolver 获取手机里面的所有图片的路径

2.把获取的图片,展示在GridView中

其实,就这么简单,好处是:维护起来方便。

注意事项:

从相册导入的图片,有大有小,太大可能撑爆内存,或者GridView滚动时,很卡。

那怎么解决呢,用picasso-2.5.2.jar就行,当然你用我前面的经典压缩图片方法也是一样的。

先来看重点代码:

Uri mImageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;

ContentResolver mContentResolver = MainActivity.this

.getContentResolver();

// 只查询jpeg和png的图片
Cursor mCursor = mContentResolver.query(mImageUri, null,
MediaStore.Images.Media.MIME_TYPE + "=? or "
+ MediaStore.Images.Media.MIME_TYPE + "=?",
new String[]{"image/jpeg", "image/png"},
MediaStore.Images.Media.DATE_MODIFIED);
while (mCursor.moveToNext()) {
// 获取图片的路径
String path = mCursor.getString(mCursor
.getColumnIndex(MediaStore.Images.Media.DATA));
list.add(path);
}


图片的处理:

Picasso.with(context).load(new File(list.get(position)))

.resize(200, 200).centerCrop().into(viewHolder.imageView);

下面有两个链接,一个是github上的,别人写的一个项目,我还觉得可以,该项目链接地址如下:

https://github.com/lovetuzitong/MultiImageSelector

后面这个是我Demo的例子,但没怎么完善,只是实现的基本功能,后续都比较简单了,自己可以完成。

链接地址如下:

http://download.csdn.net/detail/jimtrency/9610886
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: