时间:2021-05-20
获取手机中的所有图片,并过滤获取某一目录下的图片。(注释掉的代码可以按照目录分组)
private void getAllPhotoInfo() { new Thread(new Runnable() { @Override public void run() {// List<MediaBean> mediaBeen = new ArrayList<>(); HashMap<String,List<MediaBean>> allPhotosTemp = new HashMap<>();//所有照片 Uri mImageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; String[] projImage = { MediaStore.Images.Media._ID , MediaStore.Images.Media.DATA ,MediaStore.Images.Media.SIZE ,MediaStore.Images.Media.DISPLAY_NAME}; final Cursor mCursor = getContentResolver().query(mImageUri, projImage, MediaStore.Images.Media.MIME_TYPE + "=? or " + MediaStore.Images.Media.MIME_TYPE + "=?", new String[]{"image/jpeg", "image/png"}, MediaStore.Images.Media.DATE_MODIFIED+" desc"); if(mCursor!=null){ while (mCursor.moveToNext()) { // 获取图片的路径 String path = mCursor.getString(mCursor.getColumnIndex(MediaStore.Images.Media.DATA)); int size = mCursor.getInt(mCursor.getColumnIndex(MediaStore.Images.Media.SIZE))/1024; String displayName = mCursor.getString(mCursor.getColumnIndex(MediaStore.Images.Media.DISPLAY_NAME)); //用于展示相册初始化界面 if(path.contains("/storage/emulated/0/messageBoard/photoImgs")){ mediaBeen.add(new MediaBean(path,size,displayName)); }// // 获取该图片的父路径名// String dirPath = new File(path).getParentFile().getAbsolutePath();// // //存储对应关系// if (allPhotosTemp.containsKey(dirPath)) {// List<MediaBean> data = allPhotosTemp.get(dirPath);// data.add(new MediaBean(path,size,displayName));//// Log.e(TAG,"getAllPhotoInfo "+data.size()+",path="+data.get(0).getPath()+",name="+data.get(0).getDisplayName());// continue;// } else {// List<MediaBean> data = new ArrayList<>();// data.add(new MediaBean(path,size,displayName));// allPhotosTemp.put(dirPath,data);//// Log.e(TAG,"getAllPhotoInfo else "+data.size()+",path="+data.get(0).getPath()+",name="+data.get(0).getDisplayName());// } } mCursor.close(); } //更新界面 runOnUiThread(new Runnable() { @Override public void run() { //... Log.e(TAG,"mediaBeen="+mediaBeen.size()); albumAdapter = new AlbumAdapter(AvaterActivity.this,mediaBeen); gvAlbum.setAdapter(albumAdapter); gvAlbum.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Intent cropIntent = new Intent(mContext, CropImgActivity.class); cropIntent.putExtra("status",status); cropIntent.putExtra("takepath",mediaBeen.get(position).getPath()); startActivity(cropIntent); } }); } }); } }).start(); }以上这篇android 获取手机中的所有图片或某一目录下的图片方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
如下所示:#提取目录下所有图片,更改尺寸后保存到另一目录fromPILimportImageimportos.pathimportglobdefconvertj
本博文是让你学会读取站点某一目录的图片,掌握LINQ与泛型Dictionary的使用。首先准备好几张图片存在站点某一目录之下,本例中的存储图片的目录名为MsSi
转载请注明出处:http://blog.csdn.net/lindonglian首先准备网页背景图片和导航背景图片,放在同一目录下的images文件夹中编写ht
Android实现获取手机里面的所有图片详解及实例实现代码:publicclassMainActivityextendsActivity{//查看图片按钮pri
java递归读取目录下的所有文件(包含子目录下的所有文件)大概思路如下:通过file.listFiles()方法获取目录下的所有文件(包含子目录下的所有文件),