2011-09-22 11 views
11

リストのListAdapterとカスタムのonItemClickメソッドを使用した単純なListViewがあります。 私のListViewアイテムは、他の機能を実行するためにクリック可能です。しかし、私のListView要素の中には、でもクリック可能になる電子メールアドレスが含まれています。ListViewのonClickイベントがLinkified電子メールアドレスで起動しない

私はLinkifyを見つけ、ドキュメントごとに電子メールアドレスのtextviewに追加しました。

このようにした後、このような「クリック可能な」テキストビューを含むListViewアイテムは、他の機能を実行するためにクリックできなくなりました。

私は全体のビューを作成した後、私は無駄に、OnItemClickListenerを追加しようとしている:(

を任意のアイデアは私のListViewの項目が本家彼らはLinkifiedのTextViewが含まれているクリッカブル持っている方には?


私の質問に対する答えを見つけて答えとして投稿しました。

+0

いくつかのコードを追加してください。 –

+0

いくつかあります=) –

+0

行レイアウトで 'android:descendantFocusability'を試しましたか? – pawelzieba

答えて

22

解決方法:

多くの検索(私は既に行っていますが、はっきりとはっきりしていません)の後、私はついにthis pageを見つけました。

例コード: マイページ(リストビューを含むのLinearLayout)は、様々なリストビューアイテムを作成するのOnClickリスナーとして自身を割り当て、リストビューを追加ListViewAdapterを割り当て:

list.setAdapter(adapter); 
list.setOnItemClickListener(this); 
addView(list); 

ListViewAdapter各ListView項目を作成しますそして、それは必要なときに電子メールアドレスをlinkifying、コンテンツだ割り当てます

public View getView(int position, View convertView, ViewGroup parent) { 
    View view = layoutInflater.inflate(R.layout.list_item_layout, null); 
    TextView textView = (TextView) view.findViewById(R.id.item_text); 
    textView.setText(<some email address>); 
    Linkify.addLinks(textView, Linkify.EMAIL_ADDRESSES); 
} 

ソリューションは、私が見つけたページ上のコードを使用して、簡単です。 TextViewから降順にLinkTextViewクラスを作成し、そのページに記述されているメソッドを追加しました。私は文を追加の上Linkify.addLinksを呼び出した後 :

textView.setMovementMethod(null); 

ListView項目とlinkifiedテキストは両方もう一度クリック可能です。

もう一度検索しないと、最初に質問するように質問しています。

+0

リラックス男、あなたは何も謝罪する必要があります。 – palindrom

関連する問題