我有一个应用程序,我在 TextView 中显示动态文本。文字有
text_view.setMovementMethod(new ScrollingMovementMethod());
text_view.setMovementMethod(LinkMovementMethod.getInstance());
在 TextView 的文本中,我有围绕特定单词的 html 链接。链接有效,但是当您用手指向下滚动页面时,您有时会意外单击该链接并意外重定向。
问题似乎是链接这个词并不是唯一可以点击的东西。页面上的整行似乎都变成了一个链接。
TextView 中的示例文本:
TEAM1 @ TEAM2
STATUS: FINAL
LINK: ESPN
“ESPN”应该是列表中唯一可点击的项目。
您对如何纠正此问题有任何想法吗?
添加:
这是我的布局 xml
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:clickable="true"
android:orientation="vertical"
android:visibility="visible" >
<ImageButton
android:id="@+id/refresh"
android:layout_width="30dp"
android:layout_height="28dp"
android:layout_gravity="right"
android:src="@drawable/ic_menu_refresh"
android:visibility="visible" />
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_date"
android:layout_width="fill_parent"
android:layout_height="70dp"
android:textSize="12dp"
android:visibility="visible" />
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_text"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textSize="16dp"
android:visibility="visible" />
</LinearLayout>
然后在我的代码中,我将 ESPN 一词周围的 html 链接设置为:循环数据并根据附加到更大字符串的数据创建动态链接,下面 TextView 中设置的字符串分数只是一个包含字符串“链接”的字符串" 以 html 格式。
String link = "LINK: " + "<a href = \""+ game.getUrl() + "\">ESPN</a><BR><BR>");
text_view.setText(Html.fromHtml(scores));
当一切都说完了,我就有了我需要的东西。唯一的问题是,当您开始用手指向下滚动页面时,您有时会启动链接,因为链接似乎跨越了整行,包括空格。所以你的手指偶尔会不小心碰到每个人的链接。我想要的只是链接仅在您专门单击“ESPN”而不是空白处时才启动。
将字符串更改为在结束标记后实际包含空格,使空格不再可点击。
"LINK: " + "<a href = \""+ game.getUrl() + "\">ESPN</a> <BR><BR>");
奇怪的创可贴,但它有效。