2014-12-26 18 views
2

我使用Twitter的织物套件我的android应用程序,我有一个推文列表视图,但当我尝试点击推文(项目)打开一个新的活动(这是显示鸣叫的细节),但whene我点击的项目,应用程序选择器自动
apear看来,Twitter的API已经设置onItemClickListener所以我问,如果有人已经用面料包,我需要帮助推特listViwe织物套件OClickItem

ListView tweetLV = (ListView) root.findViewById(R.id.list_tweets); 
adapter = new TweetViewAdapter<CompactTweetView>(getActivity()); 
tweetLV.setAdapter(adapter); 

tweetLV.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
     String hashtag = adapter.getItem(i); 
     Intent intent = new Intent(getActivity(), DetailActivity.class) 
      .putExtra(Intent.EXTRA_TEXT, hashtag); 
     startActivity(intent); 
    } 
}); 
+0

任何更改你找到了答案?我在同一条船 –

+1

我查看了代码,并且我发现在BaseViewTweet类中他们正在触发一个intent Intent intent = new Intent(“android.intent.action.VIEW”,this.getPermalinkUri());因此我们可以通过扩展和覆盖该方法来改变它。 – sahu

+0

使用android:scheme =“https”为** android.intent.action.VIEW **添加一个意图过滤器,您将捕获被触发的意图。但是我仍然更喜欢重写onCLickListener的方法。 – sahu

回答

2

正如我在this question上所建议的,您可以尝试创建一个自定义适配器来覆盖推文的默认onClick行为:

class CustomTweetTimelineListAdapter extends TweetTimelineListAdapter { 

    public CustomTweetTimelineListAdapter(Context context, Timeline<Tweet> timeline) { 
     super(context, timeline); 
    } 

    @Override 
    public View getView(final int position, View convertView, ViewGroup parent) { 
     View view = super.getView(position, convertView, parent); 

     //disable subviews to avoid links are clickable 
     if(view instanceof ViewGroup){ 
      disableViewAndSubViews((ViewGroup) view); 
     } 

     //enable root view and attach custom listener 
     view.setEnabled(true);    
     view.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       //TODO: implement your custom behavior when clicks 
      } 
     }); 
     return view; 
    } 

    // see full example to find helper method disableViewAndSubViews 

} 

完整的代码示例here

希望它帮助。