From 0384f2e04c6550c4f6d3335f0c7d2f722f5ca3ae Mon Sep 17 00:00:00 2001 From: Kentaro Takiguchi Date: Sun, 9 Nov 2014 12:42:36 +0900 Subject: [PATCH] Introduce RecyclerView and CardView --- Rebuild/build.gradle | 2 + .../data/adapters/EpisodeListAdapter.java | 100 ------------------ 2 files changed, 2 insertions(+), 100 deletions(-) delete mode 100644 Rebuild/src/main/java/rejasupotaro/rebuild/data/adapters/EpisodeListAdapter.java diff --git a/Rebuild/build.gradle b/Rebuild/build.gradle index 05df515e..529b2eb0 100644 --- a/Rebuild/build.gradle +++ b/Rebuild/build.gradle @@ -26,6 +26,8 @@ repositories { dependencies { compile fileTree(dir: 'src/main/libs', include: '*.jar') compile 'com.android.support:appcompat-v7:21.0.0' + compile 'com.android.support:recyclerview-v7:21.0.0' + compile 'com.android.support:cardview-v7:21.0.0' compile 'com.jakewharton:butterknife:6.0.0' compile 'rejasupotaro:async-rss-client:0.0.6' compile 'com.squareup:otto:1.3.2' diff --git a/Rebuild/src/main/java/rejasupotaro/rebuild/data/adapters/EpisodeListAdapter.java b/Rebuild/src/main/java/rejasupotaro/rebuild/data/adapters/EpisodeListAdapter.java deleted file mode 100644 index b4c19849..00000000 --- a/Rebuild/src/main/java/rejasupotaro/rebuild/data/adapters/EpisodeListAdapter.java +++ /dev/null @@ -1,100 +0,0 @@ -package rejasupotaro.rebuild.data.adapters; - -import android.content.Context; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ArrayAdapter; -import android.widget.IconTextView; -import android.widget.TextView; - -import java.util.List; - -import rejasupotaro.rebuild.R; -import rejasupotaro.rebuild.data.models.Episode; -import rejasupotaro.rebuild.listener.OnDownloadButtonClickListener; -import rejasupotaro.rebuild.utils.StringUtils; -import rejasupotaro.rebuild.utils.UiAnimations; -import rejasupotaro.rebuild.views.LatestEpisodeListItemView; - -public class EpisodeListAdapter extends ArrayAdapter { - private static class ViewHolder { - TextView titleTextView; - TextView subtitleTextView; - IconTextView episodeDownloadButton; - IconTextView postedAtTextView; - TextView downloadStateText; - - public ViewHolder(View view) { - titleTextView = (TextView) view.findViewById(R.id.episode_title); - subtitleTextView = (TextView) view.findViewById(R.id.episode_subtitle); - episodeDownloadButton = (IconTextView) view.findViewById(R.id.episode_download_button); - postedAtTextView = (IconTextView) view.findViewById(R.id.episode_posted_at); - downloadStateText = (TextView) view.findViewById(R.id.download_state_text); - } - } - - private LayoutInflater inflater; - private OnDownloadButtonClickListener listener; - - public void setDownloadButtonClickListener(OnDownloadButtonClickListener listener) { - this.listener = listener; - } - - public EpisodeListAdapter(Context context, List episodeList) { - super(context, -1, episodeList); - setup(); - } - - private void setup() { - inflater = LayoutInflater.from(getContext()); - } - - @Override - public final View getView(int position, View view, ViewGroup container) { - if (position == 0) { - return createLatestEpisodeView(position); - } - - view = newView(inflater, container); - bindView(getItem(position), position, view); - return view; - } - - private View createLatestEpisodeView(int position) { - return new LatestEpisodeListItemView(getContext(), getItem(position), listener); - } - - public View newView(LayoutInflater inflater, ViewGroup container) { - View view = inflater.inflate(R.layout.list_item_episode, container, false); - ViewHolder holder = new ViewHolder(view); - view.setTag(holder); - return view; - } - - public void bindView(final Episode item, final int position, View view) { - final ViewHolder holder = (ViewHolder) view.getTag(); - - holder.titleTextView.setText(item.getTitle()); - holder.subtitleTextView.setText(StringUtils.fromHtml(item.getDescription()).toString()); - holder.postedAtTextView.setText(String.format("{fa-calendar} %s", item.getPostedAtAsString())); - if (item.isDownloaded()) { - holder.episodeDownloadButton.setText("{fa-minus}"); - } else { - holder.episodeDownloadButton.setText("{fa-download}"); - } - holder.episodeDownloadButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - UiAnimations.bounceUp(getContext(), v); - listener.onClick(item); - } - }); -// disable temporary... -// if (EpisodeDownloadService.isDownloading(item)) { -// holder.downloadStateText.setVisibility(View.VISIBLE); -// } else { -// holder.downloadStateText.setVisibility(View.GONE); -// } - } -}