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>

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

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

解决方法

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

实施如下:

在Activity类中使用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>

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...