diff --git a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/MultiImageSelectorFragment.java b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/MultiImageSelectorFragment.java index 6b48d4d..d9d075e 100644 --- a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/MultiImageSelectorFragment.java +++ b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/MultiImageSelectorFragment.java @@ -451,19 +451,21 @@ public class MultiImageSelectorFragment extends Fragment { if( !hasFolderGened ) { // 获取文件夹名称 File folderFile = new File(path).getParentFile(); - String fp = folderFile.getAbsolutePath(); - Folder f = getFolderByPath(fp); - if(f == null){ - Folder folder = new Folder(); - folder.name = folderFile.getName(); - folder.path = fp; - folder.cover = image; - List imageList = new ArrayList<>(); - imageList.add(image); - folder.images = imageList; - mResultFolder.add(folder); - }else { - f.images.add(image); + if(folderFile != null && folderFile.exists()){ + String fp = folderFile.getAbsolutePath(); + Folder f = getFolderByPath(fp); + if(f == null){ + Folder folder = new Folder(); + folder.name = folderFile.getName(); + folder.path = fp; + folder.cover = image; + List imageList = new ArrayList<>(); + imageList.add(image); + folder.images = imageList; + mResultFolder.add(folder); + }else { + f.images.add(image); + } } } diff --git a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/FolderAdapter.java b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/FolderAdapter.java index 85262a8..c51bd4c 100644 --- a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/FolderAdapter.java +++ b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/FolderAdapter.java @@ -152,12 +152,16 @@ public class FolderAdapter extends BaseAdapter { size.setText("*"+mContext.getResources().getString(R.string.photo_unit)); } // 显示图片 - Picasso.with(mContext) - .load(new File(data.cover.path)) - .placeholder(R.drawable.default_error) - .resizeDimen(R.dimen.folder_cover_size, R.dimen.folder_cover_size) - .centerCrop() - .into(cover); + if (data.cover != null) { + Picasso.with(mContext) + .load(new File(data.cover.path)) + .placeholder(R.drawable.default_error) + .resizeDimen(R.dimen.folder_cover_size, R.dimen.folder_cover_size) + .centerCrop() + .into(cover); + }else{ + cover.setImageResource(R.drawable.default_error); + } } } diff --git a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/ImageGridAdapter.java b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/ImageGridAdapter.java index b9be8b2..5a89774 100644 --- a/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/ImageGridAdapter.java +++ b/multi-image-selector/src/main/java/me/nereo/multi_image_selector/adapter/ImageGridAdapter.java @@ -220,14 +220,18 @@ public class ImageGridAdapter extends BaseAdapter { indicator.setVisibility(View.GONE); } File imageFile = new File(data.path); - // 显示图片 - Picasso.with(mContext) - .load(imageFile) - .placeholder(R.drawable.default_error) - .tag(MultiImageSelectorFragment.TAG) - .resize(mGridWidth, mGridWidth) - .centerCrop() - .into(image); + if (imageFile.exists()) { + // 显示图片 + Picasso.with(mContext) + .load(imageFile) + .placeholder(R.drawable.default_error) + .tag(MultiImageSelectorFragment.TAG) + .resize(mGridWidth, mGridWidth) + .centerCrop() + .into(image); + }else{ + image.setImageResource(R.drawable.default_error); + } } }