diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2013-08-22 15:11:37 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2013-08-22 15:11:37 +0200 |
commit | 1376b5284849e198f2a2c8346d681d49d30a4234 (patch) | |
tree | f5670b1fdda7d7b1b70cf989579472689cc29367 /src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java | |
parent | 1c8dc43a7f4db4141480423b561b0824828779f5 (diff) | |
download | AntennaPod-1376b5284849e198f2a2c8346d681d49d30a4234.zip |
Improved AddFeedActivity layout, added gpodder.net toplist fragment
Diffstat (limited to 'src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java')
-rw-r--r-- | src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java b/src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java new file mode 100644 index 000000000..795b17917 --- /dev/null +++ b/src/de/danoeh/antennapod/adapter/gpodnet/PodcastListAdapter.java @@ -0,0 +1,63 @@ +package de.danoeh.antennapod.adapter.gpodnet; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.ImageView; +import android.widget.TextView; +import de.danoeh.antennapod.R; +import de.danoeh.antennapod.asynctask.ImageDiskCache; +import de.danoeh.antennapod.gpoddernet.model.GpodnetPodcast; + +import java.util.List; + +/** + * Adapter for displaying a list of GPodnetPodcast-Objects. + */ +public class PodcastListAdapter extends ArrayAdapter<GpodnetPodcast> { + private final ImageDiskCache diskCache; + private final int thumbnailLength; + + public PodcastListAdapter(Context context, int resource, List<GpodnetPodcast> objects) { + super(context, resource, objects); + diskCache = ImageDiskCache.getDefaultInstance(); + thumbnailLength = (int) context.getResources().getDimension(R.dimen.thumbnail_length); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + Holder holder; + + GpodnetPodcast podcast = getItem(position); + + // Inflate Layout + if (convertView == null) { + holder = new Holder(); + LayoutInflater inflater = (LayoutInflater) getContext() + .getSystemService(Context.LAYOUT_INFLATER_SERVICE); + + convertView = inflater.inflate(R.layout.gpodnet_podcast_listitem, null); + holder.title = (TextView) convertView.findViewById(R.id.txtvTitle); + holder.description = (TextView) convertView.findViewById(R.id.txtvDescription); + holder.image = (ImageView) convertView.findViewById(R.id.imgvCover); + + convertView.setTag(holder); + } else { + holder = (Holder) convertView.getTag(); + } + + holder.title.setText(podcast.getTitle()); + holder.description.setText(podcast.getDescription()); + diskCache.loadThumbnailBitmap(podcast.getLogoUrl(), holder.image, thumbnailLength); + + return convertView; + } + + static class Holder { + TextView title; + TextView description; + ImageView image; + } +} |