我在 documents 中使用了确切的示例代码,但我根本没有收到 SearchTimeline
的推文,即
No Tweet
如果我用
UserTimeline
替换,我会得到结果,但当然我的用例需要 SearchTimeline
。有没有人设法让 SearchTimeline
工作?另外(仅供引用)我为我的应用程序设置了 Fabric,并且能够使用他们的 Twitter 帐户登录用户。来自文档的确切代码失败了:
public class SearchTimelineFragment extends ListFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final SearchTimeline searchTimeline = new SearchTimeline.Builder()
.query("#twitterflock")
.build();
final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(getActivity())
.setTimeline(searchTimeline)
.build();
setListAdapter(adapter);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.timeline, container, false);
}
}
此外,我正在开发中没有 PlayStore 的存在,以防万一。
更多
添加回调块不会导致失败或成功消息。就好像代码完全没有执行一样:没有服务器调用。但是,
onCreate
被调用。再次,如果我用 UserTimeline
替换,我会得到结果。@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "onCreate");
final SearchTimeline searchTimeline = new SearchTimeline.Builder()
.query("#twitterflock")
.build();
final TweetTimelineListAdapter adapter = new TweetTimelineListAdapter.Builder(getActivity())
.setTimeline(searchTimeline)
.setOnActionCallback(new Callback<Tweet>() {
@Override
public void success(Result<Tweet> result) {
Log.d(TAG, "SearchTimeline successful");
}
@Override
public void failure(TwitterException e) {
Log.d(TAG, "SearchTimeline failed");
e.printStackTrace();
;
}
})
.build();
setListAdapter(adapter);
}
我也在使用
android.support.v4.app.ListFragment;
最佳答案
那是因为您在 onCreate 中设置了列表适配器,而 onCreateView 在 onCreate 之后调用。
在 OnCreateView 中设置 listAdapter。
关于android - Twitter UserTimeline 有效,但 SearchTimeline 似乎从未调用过服务器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33351661/