Skip to content

Instantly share code, notes, and snippets.

@jrm2k6
Created September 22, 2013 16:12
Show Gist options
  • Select an option

  • Save jrm2k6/6661410 to your computer and use it in GitHub Desktop.

Select an option

Save jrm2k6/6661410 to your computer and use it in GitHub Desktop.
adapter
package com.jumy.twitterclient.adapters;
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 com.jumy.twitterclient.R;
import com.jumy.twitterclient.models.Tweet;
public class TweetAdapter extends ArrayAdapter<Tweet> {
private Tweet[] data;
private int layoutResourceId;
private Context context;
public TweetAdapter(Context _context, int _layoutResourceId, Tweet[] _data) {
super(_context, _layoutResourceId, _data);
context = _context;
layoutResourceId = _layoutResourceId;
data = _data;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
TweetHolder holder;
if (row == null) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row = inflater.inflate(layoutResourceId, parent, false);
holder = new TweetHolder();
holder.tweetUserPicture = (ImageView) row.findViewById(R.id.tweetUserPicture);
holder.tweetUserName = (TextView) row.findViewById(R.id.tweetUserName);
holder.tweetContent = (TextView) row.findViewById(R.id.tweetContent);
row.setTag(holder);
} else {
holder = (TweetHolder) row.getTag();
}
return row;
}
static class TweetHolder
{
ImageView tweetUserPicture;
TextView tweetUserName;
TextView tweetContent;
}
}
package com.jumy.twitterclient.ui;
import android.app.ListFragment;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import com.jumy.twitterclient.R;
import com.jumy.twitterclient.adapters.TweetAdapter;
import com.jumy.twitterclient.models.Tweet;
import java.util.ArrayList;
import java.util.List;
import twitter4j.ResponseList;
import twitter4j.Status;
public class TimelineFragment extends ListFragment {
private ResponseList<Status> _statuses;
public static TimelineFragment newInstance() {
return new TimelineFragment();
}
public void getStatuses() {
_statuses = (ResponseList<Status>)getArguments().get(HomeActivity.BUNDLE_TIMELINE_KEY);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getStatuses();
TweetAdapter adapter = new TweetAdapter(getActivity(), R.layout.tweet_detail, testTweet());
setListAdapter(adapter);
}
private Tweet[] testTweet() {
return new Tweet[] {
new Tweet(_statuses.get(0).getUser().getScreenName(), _statuses.get(0).getText(), _statuses.get(0).getUser().getProfileImageURL()),
new Tweet(_statuses.get(1).getUser().getScreenName(), _statuses.get(1).getText(), _statuses.get(1).getUser().getProfileImageURL()),
new Tweet(_statuses.get(2).getUser().getScreenName(), _statuses.get(2).getText(), _statuses.get(2).getUser().getProfileImageURL()),
};
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment