使用包含可单击HTML链接的字符串设置TextView

时间:2014-04-15 09:00:34

标签: android textview

我的布局中有TextView

 <TextView
    android:id="@+id/homepage"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"

我想在此TextView中使用 HTML链接设置字符串使链接可点击(在浏览器上打开链接时点击)。我尝试了以下方法:

我在资源中定义了字符串,该字符串包含一个指向谷歌网站的HTML链接:

<string name="home_page">please go to &lt;a ref="www.google.com">www.google.com!&lt;/a>.

在我的活动中:

TextView homepage =  (TextView)findViewById(R.id.homepage);

String text = getString(R.string.home_page)
CharSequence styledText = Html.fromHtml(text);

homepage.setText(styledText.toString());

结果请访问www.google.com ,但 www.google.com 不是可点击的链接。如何让它可点击? (我的意思是点击时在浏览器中打开链接)

4 个答案:

答案 0 :(得分:3)

试试这个..

请勿忘记在http://之前使用www.,否则您将获得ActivityNotFoundException

TextView homepage =  (TextView)findViewById(R.id.homepage);
homepage.setMovementMethod(LinkMovementMethod.getInstance());
homepage.setText(Html.fromHtml("<font color='#696969'> please go to <a href=\""+"http://www.google.com"+"\">"+"http://www.google.com"+"</a></font>"));

答案 1 :(得分:0)

以下代码为我工作: -

<TextView
    android:id="@+id/txt_post_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:autoLink="web"
    android:textSize="16sp" />

Autolink inside a TextView in android

http://alltechsolution.wordpress.com/2012/06/17/how-do-i-make-links-in-a-textview-clickable/

http://www.technotalkative.com/android-textview-autolink-attribute/

答案 2 :(得分:0)

此博客中描述了执行此操作的所有代码。请检查它 http://android-developers.blogspot.fi/2008/03/linkify-your-text.html

答案 3 :(得分:-1)

<TextView 
        android:id="@+id/links"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:autoLink="web" 
        android:text="www.google.com" />

试试这个代码,它为我工作。