我想制作超链接" TERMS"和"隐私政策"它不适合我的情况: -
mTermsPPText = (TextView) view.findViewById(R.id.bottom_text);
String value = "<html>By joining you agree to our <font color=\"#3C599F\" ><a href=\"http://www.google.com/\">TERMS</a></font> & <font color=\"#3C599F\" ><a href=\"http://www.google.com/\">PRIVACY POLICY</a></font></html>";
mTermsPPText.setText(value);
答案 0 :(得分:4)
请为字符串使用spannable String,如下所示:
String value = "<html>By joining you agree to our <font color=\"#3C599F\" ><a href=\"http://www.google.com/\">TERMS</a></font> & <font color=\"#3C599F\" ><a href=\"http://www.google.com/\">PRIVACY POLICY</a></font></html>";
Spannable s = (Spannable) Html.fromHtml(value);
URLSpan[] spans = s.getSpans(0, s.length(), URLSpan.class);
for (URLSpan span: spans) {
int start = s.getSpanStart(span);
int end = s.getSpanEnd(span);
s.removeSpan(span);
span = new URLSpan(span.getURL());
s.setSpan(span, start, end, 0);
}
mTermsPPText.setText(s);
使用移动方法点击
执行操作 mTermsPPText.setMovementMethod(LinkMovementMethod.getInstance());
希望它对您有所帮助。
答案 1 :(得分:1)
尝试这样做
mTermsPPText.setText(Html.fromHtml(value));
mTermsPPText.setMovementMethod(LinkMovementMethod.getInstance());
答案 2 :(得分:0)
//use set movement method before setting html page in textview
TextView t2 = (TextView) findViewById(R.id.text2);
t2.setMovementMethod(LinkMovementMethod.getInstance());
// than set text in html
t2.setText(Html.fromHtml(linkText));
// important thing is that you should use anchor tag in html to make link clickable
// dont use autolink in textview
<TextView
android:id="@+id/t2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>