summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Oeh <daniel@danielpc.(none)>2012-04-12 14:49:20 +0200
committerDaniel Oeh <daniel@danielpc.(none)>2012-04-12 14:49:20 +0200
commitc633acfa8b25e5bd5a1e6e028a070d4a7dd0e253 (patch)
treecdec9446cff782da0910ed3801d3caf3b80536e6 /src
parenta3ee5801ad47288d511ffb6a7bfd9fb9d5efb5f0 (diff)
downloadAntennaPod-c633acfa8b25e5bd5a1e6e028a070d4a7dd0e253.zip
Made FeedlistAdapter more efficient
Diffstat (limited to 'src')
-rw-r--r--src/de/podfetcher/adapter/FeedlistAdapter.java35
1 files changed, 19 insertions, 16 deletions
diff --git a/src/de/podfetcher/adapter/FeedlistAdapter.java b/src/de/podfetcher/adapter/FeedlistAdapter.java
index 1ef74eef3..78b2bb746 100644
--- a/src/de/podfetcher/adapter/FeedlistAdapter.java
+++ b/src/de/podfetcher/adapter/FeedlistAdapter.java
@@ -30,31 +30,34 @@ public class FeedlistAdapter extends ArrayAdapter<Feed> {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
- LinearLayout feedlistView;
-
-
+ Holder holder;
Feed feed = getItem(position);
+
// Inflate Layout
if (convertView == null) {
- feedlistView = new LinearLayout(getContext());
- String inflater = Context.LAYOUT_INFLATER_SERVICE;
- LayoutInflater vi = (LayoutInflater)getContext().getSystemService(inflater);
- vi.inflate(resource, feedlistView, true);
+ holder = new Holder();
+ LayoutInflater inflater = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+
+ convertView = inflater.inflate(R.layout.feedlist_item, null);
+ holder.title = (TextView) convertView.findViewById(R.id.txtvFeedname);
+ holder.image = (ImageView) convertView.findViewById(R.id.imgvFeedimage);
+
+ convertView.setTag(holder);
} else {
- feedlistView = (LinearLayout) convertView;
+ holder = (Holder) convertView.getTag();
}
- ImageView imageView = (ImageView)feedlistView.findViewById(R.id.imgvFeedimage);
- TextView txtvFeedname = (TextView)feedlistView.findViewById(R.id.txtvFeedname);
- TextView txtvNewEpisodes = (TextView)feedlistView.findViewById(R.id.txtvNewEpisodes);
+ holder.title.setText(feed.getTitle());
if(feed.getImage() != null) {
- imageView.setImageURI(Uri.fromFile(new File(feed.getImage().getFile_url()))); // TODO select default picture when no image downloaded
+ holder.image.setImageURI(Uri.fromFile(new File(feed.getImage().getFile_url()))); // TODO select default picture when no image downloaded
}
- txtvFeedname.setText(feed.getTitle());
// TODO find new Episodes txtvNewEpisodes.setText(feed)
- return feedlistView;
+ return convertView;
+ }
+
+ static class Holder {
+ TextView title;
+ ImageView image;
}
-
-
}