@Override
        public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
          String[] mFilterDirs = getResources().getStringArray(R.array.filter_out_dirs);
          if (data != null) {
            List<Image> images = new ArrayList<Image>();
            int count = data.getCount();
            if (count > 0) {
              data.moveToFirst();
              do {
                String path = data.getString(data.getColumnIndexOrThrow(IMAGE_PROJECTION[0]));
                String name = data.getString(data.getColumnIndexOrThrow(IMAGE_PROJECTION[1]));
                long dateTime = data.getLong(data.getColumnIndexOrThrow(IMAGE_PROJECTION[2]));
                Image image = new Image(path, name, dateTime);
                File file = new File(path);
                if (file.exists()) {
                  String imageParentName = file.getParentFile().getName();
                  if (!isFilterOutDir(imageParentName, mFilterDirs)) {
                    images.add(image);
                  }
                }
                if (!hasFolderGened) {
                  // 获取文件夹名称
                  File imageFile = new File(path);
                  if (imageFile.exists()) {
                    File folderFile = imageFile.getParentFile();
                    Folder folder = new Folder();
                    folder.name = folderFile.getName();
                    folder.path = folderFile.getAbsolutePath();
                    folder.cover = image;
                    if (!mResultFolder.contains(folder)) {
                      List<Image> imageList = new ArrayList<Image>();
                      if (!isFilterOutDir(folder.name, mFilterDirs)) {
                        imageList.add(image);
                        folder.images = imageList;
                        mResultFolder.add(folder);
                      }
                    } else {
                      // 更新
                      Folder f = mResultFolder.get(mResultFolder.indexOf(folder));
                      if (!isFilterOutDir(folder.name, mFilterDirs)) {
                        f.images.add(image);
                      }
                    }
                  }
                }

              } while (data.moveToNext());

              mImageAdapter.setData(images);

              // 设定默认选择
              if (resultList != null && resultList.size() > 0) {
                mImageAdapter.setDefaultSelected(resultList);
              }

              mFolderAdapter.setData(mResultFolder);
              hasFolderGened = true;
            }
          }
        }