他のビューのほかに、各行に TextView を含む ListView があります。TextView は、リンクを含む可能性のある HTML コンテンツをレンダリングします。
リスト アダプターには以下のコードが表示されます。 m_textview.setMovementMethod(LinkMovementMethod.getInstance()); m_textview.setText(Html.fromHtml(myhtmlcontent));
ただし、これにより、リストビューはクリック イベントを受信しなくなります。代わりに、アダプターによって返されるビューにリストの onclick コードを配置することにしました。これは期待どおりには機能しません。これで、テキストビュー以外の行の任意の場所をクリックすると、別のアクティビティを起動できます。ユーザーがテキストビューのリンク以外の部分をクリックして、別のアクティビティを起動できるようにしたいと思います。
onclick を親ビューではなくテキストビューに移動すると、機能しますが、リンクをクリックすると 2 つのイベントが発生します。1 つはリンクのクリック用、もう 1 つはテキストビュー用です (これは望ましくありません)。
Android 上の Google+ と Peep は、私が望む通りに動作することに気づきました。どうすればそれが実現できるのかわかりません。
ベストアンサー1
これは実際にはバグこれを解決するには、行レイアウトxmlを追加しますandroid:descendantFocusability="blocksDescendants"
。ListView's
例えば
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:descendantFocusability="blocksDescendants"
android:orientation="vertical" >
<TextView
android:id="@+id/lblStatusMessage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autoLink="web"
android:focusable="false"
android:textSize="15sp" />
</LinearLayout>
幸運を :)