为什么链接上的下划线在链接之前超过空格字符的任何想法?您可以看到下划线几乎触及链接前的字符r和d。
我的TextView:
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="5dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="15dp"
android:text="@string/register_terms"
android:textAlignment="center"
android:textColor="#BFFFFFFF"
android:textColorLink="@android:color/white"
android:textSize="15sp" />
我的字符串:
<string name="register_terms">By clicking this button, you agree to our <a href="https://www.google.com/">Terms & Conditions</a> and <a href="https://www.google.com/">Privacy Policy</a>.</string>
答案 0 :(得分:0)
以下是我帮助您的答案的链接:LINK。
他们详细解释了如何在字符串中使用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());
在strings.xml中修改如下:
<string name="link">Test <![CDATA[<a href="#">link</a>]]></string>
希望有所帮助:)
答案 1 :(得分:0)
您可以在xml中将字符串写为:
<string name="register_terms">By clicking this button, you agree to our <a href="https://www.google.com/">Terms & Conditions</a> and <a href="https://www.google.com/">Privacy Policy</a>.</string>
并在textview属性中声明为:android:text="@string/register_terms"
或者您可以将xml中的字符串声明为:
<string name="register_terms">By clicking this button, you agree to our <![CDATA[<a href="https://www.google.com/">Terms & Conditions</a>]]> and <![CDATA[<a href="https://www.google.com/">Privacy Policy</a>]]>.</string>
并在活动中使用:
TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(Html.fromHtml(getString(R.string.register_terms)));