TextView锚链接空间

ant*_*kas 6 android textview

我想用链接制作TextView.我用html和java的组合制作了它:

// used to enable link navigation on TextView
setMovementMethod(LinkMovementMethod.getInstance())

// TextView with link
<TextView
    android:id="@+id/textView5"
    android:layout_width="wrap_content"
    android:layout_height="19dp"
    android:layout_marginTop="8dp"
    android:gravity="center"
    android:linksClickable="true"
    android:text="@string/link"/>

// @string/link
<string name="link">Test <a href="#">link</a></string>
Run Code Online (Sandbox Code Playgroud)

但是仍然存在一个问题,实际链接文本之前的空格加下划线如下:

在此输入图像描述

为什么这样,它怎么能修复?

Ash*_*Das 10

// @ string/link

<string name="link1">Test&#160;<a href="#">link</a></string>
Run Code Online (Sandbox Code Playgroud)

您可以使用xml中的空格作为字符串使用&#160;.XML不会占用空白区域.在设置之前它会修剪空白区域.所以使用&#160;而不是单个空格.


Gok*_* KP 3

CDATA在字符串中使用标签HTML并使用Html.fromHtml()方法设置文本。

实施如下:

Html.fromHtml()设置课堂上使用的文本Activity

TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(Html.fromHtml(getString(R.string.link)));
textView.setMovementMethod(LinkMovementMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)

修改strings.xml如下:

<string name="link">Test <![CDATA[<a href="#">link</a>]]></string>
Run Code Online (Sandbox Code Playgroud)