2012-01-24 11 views
8

Chciałbym wiedzieć, czy iw jaki sposób można dodać łącze do widgetu TextView. W mojej aplikacji pokazuję tekst i obok tego tekstu obraz. Chciałbym wstawić w tekście klikalny link do Internetu. czy to możliwe?Dodawanie łącza do widgetu TextView

+1

http://stackoverflow.com/questions/2734270/how-do-i-make-links-in-a-textview-clickable – VicVu

Odpowiedz

10

Po prostu musisz ustawić właściwość: android: autolink.

<TextView 
     android:autoLink="web" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"   
     android:text="http://www.google.com" /> 
+0

Thx, działa idealnie! –

+0

Bardzo proste i łatwe do dodania. Dziękuję Ci! +1 – Darrell

0

To jak to zrobiłem kodem

private void setAsLink(TextView view, String url){ 
     Pattern pattern = Pattern.compile(url); 
     Linkify.addLinks(view, pattern, "http://"); 
     view.setText(Html.fromHtml("<a href='http://"+url+"'>http://"+url+"</a>")); 
    } 
0

W przypadku, gdy link do strony internetowej różni się od tekstu są pokazano w TextView:

TextView w pliku layoutu:

<TextView 
    android:id="@+id/textview_with_hidden_clickable_link" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/string_with_text_and_link"/> 

ciąg w pliku zasobów:

<string name="string_with_text_and_link"> 
    <a href="http://any_web_site">The text in your TextView</a> 
</string> 

A w swojej klasie Java:

((TextView)findViewById(R.id.textview_with_hidden_clickable_link)) 
    .setMovementMethod(LinkMovementMethod.getInstance()); 

UWAGA: http:// w zasobie strun jest konieczne.

Powiązane problemy