コード例 #1
0
 @Override
 public void onDestroy() {
   super.onDestroy();
   if (downloadTask != null && downloadTask.getStatus() == AsyncTask.Status.RUNNING) {
     downloadTask.cancel(true);
   }
 }
コード例 #2
0
  private static boolean cancelPotentialDownload(String url, ImageView imageView) {
    DownloadImageTask bitmapDownloaderTask = getBitmapDownloaderTask(imageView);

    if (bitmapDownloaderTask != null) {
      String bitmapUrl = bitmapDownloaderTask.url;
      if ((bitmapUrl == null) || (!bitmapUrl.equals(url))) {
        bitmapDownloaderTask.cancel(true);
      } else {
        // The same URL is already being downloaded.
        return false;
      }
    }
    return true;
  }
コード例 #3
0
    @Override
    public void onDestroyView() {
      Drawable drawable = imageView.getDrawable();
      if (drawable != null) {
        if (drawable instanceof GifDrawable) {
          ((GifDrawable) drawable).recycle();
        } else {
          drawable.setCallback(null);
        }
        imageView.setImageDrawable(null);
      }

      super.onDestroyView();
      if (task != null && task.loading && !task.isCancelled()) {
        task.cancel(true);
      }
    }