在textview中设置可点击的网址链接

时间:2014-05-28 12:50:56

标签: android textview

我的字符串是url字符串与href内的url的组合,如: "转到http://www.google.co.in了解更多详情,请点击

here

"

不,我需要显示可点击的两者: 1- http:www.google.co.in 2-这里

并点击链接,它应显示相应的网址。

2 个答案:

答案 0 :(得分:1)

在XML文件中使用android:autoLink="web"

只需在资源中使用HTML格式链接(Strings.xml):

<string name="my_link"><a ref="http://somesite.com/">Click me!</a></string>

然后,您可以在TextView上使用setMovementMethod(LinkMovementMethod.getInstance())来使链接可单击。

答案 1 :(得分:0)

您可以尝试:

// text2 has links specified by putting <a> tags in the string
// resource.  By default these links will appear but not
// respond to user input.  To make them active, you need to
// call setMovementMethod() on the TextView object.

TextView t2 = (TextView) findViewById(R.id.text2);
t2.setMovementMethod(LinkMovementMethod.getInstance());

另一种方式:

https://stackoverflow.com/a/17544212/1318946

编辑:

它不是完全正确的解决方案,但您可以使用此解决方案来解决您的问题。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:text="Go"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="5dp"
    android:layout_toRightOf="@+id/textView1"
    android:text="Google.com"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#0000ff" />

<TextView
    android:id="@+id/textView3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="5dp"
    android:text="For more Details"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/textView3"
    android:layout_alignBottom="@+id/textView3"
    android:layout_marginLeft="5dp"
    android:layout_toRightOf="@+id/textView3"
    android:text="Click here"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#0000ff" />

输出如下:

enter image description here

现在你必须为onClickListenertextView2定义textView4,你可以想要你想要的。 :)

快乐编码。