TextView 锚点 link space
TextView anchor link space
我想制作一个带有 link 的 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>
但是还有一个问题,实际link文本之前的space是这样加下划线的:
为什么会这样,如何解决?
在字符串中使用CDATA
来使用HTML
标签并使用Html.fromHtml()
方法设置文本。
下面的实现:
在 Activity
class 中使用 Html.fromHtml()
设置文本。
TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(Html.fromHtml(getString(R.string.link)));
textView.setMovementMethod(LinkMovementMethod.getInstance());
在strings.xml
中修改如下:
<string name="link">Test <![CDATA[<a href="#">link</a>]]></string>
// @string/link
<string name="link1">Test <a href="#">link</a></string>
您可以使用 xml 中的白色 space 作为字符串使用  
。 XML 不会按原样使用白色 space。在设置之前它会 trim 白色 space 。所以用 
代替单白space.
我想制作一个带有 link 的 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>
但是还有一个问题,实际link文本之前的space是这样加下划线的:
为什么会这样,如何解决?
在字符串中使用CDATA
来使用HTML
标签并使用Html.fromHtml()
方法设置文本。
下面的实现:
在 Activity
class 中使用 Html.fromHtml()
设置文本。
TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(Html.fromHtml(getString(R.string.link)));
textView.setMovementMethod(LinkMovementMethod.getInstance());
在strings.xml
中修改如下:
<string name="link">Test <![CDATA[<a href="#">link</a>]]></string>
// @string/link
<string name="link1">Test <a href="#">link</a></string>
您可以使用 xml 中的白色 space 作为字符串使用  
。 XML 不会按原样使用白色 space。在设置之前它会 trim 白色 space 。所以用 
代替单白space.