Java 获取TweetTimelineListAdapter';s数据
我是java新手,所以如果我把我的问题弄糊涂了,我很抱歉 我的问题是,我通过Java 获取TweetTimelineListAdapter';s数据,java,android,listview,twitter,twitter-fabric,Java,Android,Listview,Twitter,Twitter Fabric,我是java新手,所以如果我把我的问题弄糊涂了,我很抱歉 我的问题是,我通过TweetTimelineListAdapter获得一个tweet列表,并在listview中显示数据,如下所示 final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(this) .setTimeline(userTimeline) .build(); se
TweetTimelineListAdapter
获得一个tweet列表,并在listview
中显示数据,如下所示
final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(this)
.setTimeline(userTimeline)
.build();
setListAdapter(adapter);
一切正常,但我想要的是在适配器中获取(查看)数据。我只能在列表视图中看到tweets
我需要将适配器的数据放入一个数组中,以便通过MainActivity
进一步使用
有什么方法可以做到这一点,或者您可以给出什么建议,请分享。通常,在Android中,每个适配器类都为您提供以下方法:
public int getCount();
public T getItem(int position);
因此,用户可以按如下方式从适配器类获取所有数据:
ArrayList<T> data= new ArrayList<T> ();
for(int i= 0; i < adapter.getCount(); i++) {
data.add(adapter.getItem(i));
}
ArrayList<Tweet> tweets = new ArrayList<Tweet> ();
for(int i= 0; i<adapter.getCount();i++) {
tweets.add(adapter.getItem(i));
}
此处tweetTimeLinesAdapter
扩展TimeLinesAdapter
和timelineistadapter
扩展BaseAdapter
和BaseAdapter
类具有以下特性:
因此,您可以从TweetTimelineListAdapter获取所有数据,如下所示:
ArrayList<T> data= new ArrayList<T> ();
for(int i= 0; i < adapter.getCount(); i++) {
data.add(adapter.getItem(i));
}
ArrayList<Tweet> tweets = new ArrayList<Tweet> ();
for(int i= 0; i<adapter.getCount();i++) {
tweets.add(adapter.getItem(i));
}
arraylisttweets=newarraylist();
对于(int i=0;i你应该这样做:
List<Tweet> tweets = new ArrayList<>();
int count = adapter.getCount();
for (int i=0;i<count;i++) {
tweets.add(adpater.getItem(i););
}
List tweets=new ArrayList();
int count=adapter.getCount();
对于(int i=0;igetItem(int position)
?当我在adaper上运行时,您能给出正确的代码吗?它显示错误。我的意思是我应该放置什么来代替int position。什么错误?只需调用adapter.getItem()类TimelineListAdapter中的methodmethod getItem无法应用于给定类型;必需:找到int:无参数完整方法签名为android.widget.Adapter#getItem(int位置)
,只需传递位置
argumentgetting Adapter.getCount()“0”。但我在listview中有tweets。因此循环没有调用。@如果是这种情况,则需要在应用程序中扩展TweetTimelineListAdapter,并需要覆盖getCount()方法返回有效的计数。我该怎么做?@Atula您可以创建自己的类,如下所示:AtulaTweetTimelineListAdapter扩展了TweetTimelineListAdapter,然后您可以实现getCount()来返回时间线推文的计数。
List<Tweet> tweets = new ArrayList<>();
int count = adapter.getCount();
for (int i=0;i<count;i++) {
tweets.add(adpater.getItem(i););
}