package com.jdroid.android.sample.ui.twitter; import android.view.ViewGroup; import com.jdroid.android.fragment.AbstractFragment; import com.jdroid.android.twitter.TwitterHelper; import com.twitter.sdk.android.core.models.Tweet; import com.twitter.sdk.android.tweetui.CompactTweetView; import com.twitter.sdk.android.tweetui.SearchTimeline; import java.util.List; public abstract class SampleTwitterHelper extends TwitterHelper { private ViewGroup tweetContainer; @Override protected SearchTimeline createSearchTimeline() { SearchTimeline.Builder searchTimelineBuilder = new SearchTimeline.Builder(); StringBuilder queryBuilder = new StringBuilder(); queryBuilder.append("android"); searchTimelineBuilder.maxItemsPerRequest(15); searchTimelineBuilder.query(queryBuilder.toString()); return searchTimelineBuilder.build(); } @Override protected void onStartLoadingTweets() { AbstractFragment fragment = getAbstractFragment(); if (fragment != null) { fragment.showLoading(); } } @Override protected void onSuccess(List<Tweet> tweets) { AbstractFragment fragment = getAbstractFragment(); if (fragment != null) { tweetContainer.removeAllViews(); for(Tweet each : tweets) { tweetContainer.addView(new CompactTweetView(fragment.getContext(), each)); } fragment.dismissLoading(); } } @Override protected void onFailure() { AbstractFragment fragment = getAbstractFragment(); if (fragment != null) { fragment.dismissLoading(); } } public void setTweetContainer(ViewGroup tweetContainer) { this.tweetContainer = tweetContainer; } }