Example #1
0
  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    ClementineSongDownloader downloader = App.downloaders.get(position);
    DownloadViewHolder downloadViewHolder;

    if (convertView == null) {
      convertView =
          ((Activity) mContext).getLayoutInflater().inflate(R.layout.download_row, parent, false);

      downloadViewHolder = new DownloadViewHolder();

      downloadViewHolder.title = (TextView) convertView.findViewById(R.id.tvDlTitle);
      downloadViewHolder.subtitle = (TextView) convertView.findViewById(R.id.tvDlSubtitle);
      downloadViewHolder.progress = (ProgressBar) convertView.findViewById(R.id.pbDlProgress);
      downloadViewHolder.cancel = (ImageButton) convertView.findViewById(R.id.ibCancelDl);

      convertView.setTag(downloadViewHolder);
    } else {
      downloadViewHolder = (DownloadViewHolder) convertView.getTag();
    }

    convertView.setBackgroundResource(R.drawable.selector_white_orange_selected);

    downloadViewHolder.cancel.setOnClickListener(oclCancel);
    downloadViewHolder.cancel.setTag(downloader);

    downloadViewHolder.progress.setMax(100);
    downloadViewHolder.progress.setProgress(downloader.getCurrentProgress());
    downloadViewHolder.title.setText(downloader.getTitle());
    downloadViewHolder.subtitle.setText(downloader.getSubtitle());

    return convertView;
  }
Example #2
0
        @Override
        public void onClick(View v) {
          ClementineSongDownloader downloader = (ClementineSongDownloader) v.getTag();

          if (downloader.getStatus() == AsyncTask.Status.RUNNING) {
            downloader.cancel(true);
            Toast.makeText(mContext, R.string.download_noti_canceled, Toast.LENGTH_SHORT).show();
          } else {
            App.downloaders.remove(downloader);
          }

          notifyDataSetChanged();
        }