예제 #1
0
 private void initMainData(int viewID) {
   fileInfos = new ArrayList<FileInfo>();
   switch (viewID) {
     case R.id.file_classlist_all:
       // 获取文件大小
       fileSize = FileManager.getFileManager().getAnyFileSize();
       // 获取文件列表
       fileInfos = FileManager.getFileManager().getAnyFileList();
       // 获取标题名称
       title = getResources().getString(R.string.filetype_all);
       break;
     case R.id.file_classlist_txt:
       fileSize = FileManager.getFileManager().getTxtFileSize();
       fileInfos = FileManager.getFileManager().getTxtFileList();
       title = getResources().getString(R.string.filetype_txt);
       break;
     case R.id.file_classlist_video:
       fileSize = FileManager.getFileManager().getVideoFileSize();
       fileInfos = FileManager.getFileManager().getVideoFileList();
       title = getResources().getString(R.string.filetype_video);
       break;
     case R.id.file_classlist_audio:
       fileSize = FileManager.getFileManager().getAudioFileSize();
       fileInfos = FileManager.getFileManager().getAudioFileList();
       title = getResources().getString(R.string.filetype_audio);
       break;
     case R.id.file_classlist_image:
       fileSize = FileManager.getFileManager().getImageFileSize();
       fileInfos = FileManager.getFileManager().getImageFileList();
       title = getResources().getString(R.string.filetype_image);
       break;
     case R.id.file_classlist_apk:
       fileSize = FileManager.getFileManager().getApkFileSize();
       fileInfos = FileManager.getFileManager().getApkFileList();
       title = getResources().getString(R.string.filetype_apk);
       break;
     case R.id.file_classlist_zip:
       fileSize = FileManager.getFileManager().getZipFileSize();
       fileInfos = FileManager.getFileManager().getZipFileList();
       title = getResources().getString(R.string.filetype_zip);
       break;
   }
   fileNumber = fileInfos.size();
 }
예제 #2
0
  public void delFile() {
    // 用来保存所有选中的删除文件
    List<FileInfo> delFileInfos = new ArrayList<FileInfo>();
    for (int i = 0; i < fileAdapter.getDataList().size(); i++) {
      FileInfo fileInfo = fileInfos.get(i);
      // 已选中的
      if (fileInfo.isSelect()) {
        delFileInfos.add(fileInfo);
      }
    }
    // 删除所选中的文件
    for (int i = 0; i < delFileInfos.size(); i++) {
      FileInfo fileInfo = delFileInfos.get(i);
      File file = fileInfo.getFile();
      long size = file.length();
      if (file.delete()) {
        fileAdapter.getDataList().remove(fileInfo);
        FileManager.getFileManager().getAnyFileList().remove(fileInfo);
        FileManager.getFileManager()
            .setAnyFileSize(FileManager.getFileManager().getAnyFileSize() - size);
        switch (id) {
          case R.id.file_classlist_txt:
            FileManager.getFileManager().getTxtFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setTxtFileSize(FileManager.getFileManager().getTxtFileSize() - size);
            break;
          case R.id.file_classlist_video:
            FileManager.getFileManager().getVideoFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setVideoFileSize(FileManager.getFileManager().getVideoFileSize() - size);
            break;
          case R.id.file_classlist_audio:
            FileManager.getFileManager().getAudioFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setAudioFileSize(FileManager.getFileManager().getAudioFileSize() - size);
            break;
          case R.id.file_classlist_image:
            FileManager.getFileManager().getImageFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setImageFileSize(FileManager.getFileManager().getImageFileSize() - size);
            break;
          case R.id.file_classlist_apk:
            FileManager.getFileManager().getApkFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setApkFileSize(FileManager.getFileManager().getApkFileSize() - size);
            break;
          case R.id.file_classlist_zip:
            FileManager.getFileManager().getZipFileList().remove(fileInfo);
            FileManager.getFileManager()
                .setZipFileSize(FileManager.getFileManager().getZipFileSize() - size);
            break;
        }
      }
    }
    // 更新列表
    fileAdapter.notifyDataSetChanged();
    // 获取文件数量
    fileNumber = fileAdapter.getDataList().size();
    // 显示
    textViewNumber.setText(fileNumber + "个");

    // 放弃线程当前执行权
    Thread.yield();
  }