web-dev-qa-db-ja.com

TextViewの通常のリンクをクリック可能にする方法は?

Androidアプリでは、TextViewがあります。テキストにはリンクを含めることができます。これはテキストの例です:

_This is just a test. Click the following link http://www.google.com to visit Google._

テキストはHTMLではない;であることに注意してください。通常のテキストになります。

textView.parseLinks()のようなことをしたい場合、TextViewで_http://www.google.com_がハイパーリンクされ、クリックしてページを開くことができます。

これは可能ですか?

ありがとう

19
omega

XMLファイルのTextView定義に次を試して含めます。

<TextView
    ...
    Android:autoLink="web"/>

Android:autoLink のドキュメント:

URLや電子メールアドレスなどのリンクが自動的に検出され、クリック可能なリンクに変換されるかどうかを制御します

そのため、自動的にリンクを見つけるには、上記の方法が役立ちます。試してみてください。

63
Shobhit Puri

このような何かが動作するはずです。

    TextView tv = (TextView) findViewById(R.id.textView1);
    String text = "This is just a test. Click this link here <a href=\"http://www.google.com\">Google</a> to visit google.";
    tv.setMovementMethod(LinkMovementMethod.getInstance());
    tv.setText(Html.fromHtml(text));
6
Ye Lin Aung
    <TextView
        ...
        Android:autoLink="..."/>
//set  ... by web|email|none|phone|map|all according to your need

//リンクの色を変更するにはAndroid:textColorLink = "@ color/yourcolor"行の下に追加します

5
bala

これを試してください。それは私のために働いています

  <TextView
    Android:id="@+id/text"
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    Android:autoLink="web"
    Android:text="click here http://www.google.com/"/>
2
Ketan Ahir

URLおよびTextViewの電話番号を選択する簡単な方法:

TextView textView = (TextView)findViewById(R.id.textView1);
textView.setText("some url is www.google.com phone 7504567890 another url lkgndflg.com ");
Linkify.addLinks(textView, Linkify.WEB_URLS | Linkify.PHONE_NUMBERS);
1
Rahul Raina