2014-12-26 2 views
2

Я использую набор твитов для моего приложения для Android, и у меня есть список твитов, но когда я пытаюсь щелкнуть твит (элемент), чтобы открыть новое действие (это показывает подробности твит), но я нажимаю при е к пункту, приложение автоматически Chooser появляться
кажется, что твиттер-апи уже установил onItemClickListener поэтому я прошу, если кто-то уже использовать набор ткани мне нужна помощьOClickItem из twitter listViwe Fabric Kit

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 = new Intent («android.intent.action.VIEW», this.getPermalinkUri()); Поэтому мы можем изменить его, расширив и переопределив метод. – sahu

+0

Добавьте фильтр намерений для ** android.intent.action.VIEW ** с android: scheme = "https", и вы поймаете намерение, которое будет уволено. Но все же я предпочел бы способ переопределить 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

Надежда это помогает.

Смежные вопросы