2012-07-10 1 views
6

Perché il collegamento ipertestuale TextView non funziona.TextView Il collegamento ipertestuale non funziona?

Utilizzo del collegamento ipertestuale all'interno dell'abitudine dialog box.

Il collegamento ipertestuale non viene visualizzato.

Dove mi sbaglio. Come risolverlo Dammi una guida.

codice XML è

<TextView 
android:id="@+id/google_Link" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="center" 
android:gravity="center" 
android:padding="10dip" 
android:textSize="20dip" 
android:linksClickable="true" 
android:autoLink="all" 
android:textColorLink="#306EFF" 
android:text="" /> 

codice Android è

TextView googleLink = (TextView) layout.findViewById(R.id.google_Link); 
googleLink.setClickable(true); 
googleLink.setMovementMethod(LinkMovementMethod.getInstance()); 
googleLink.setText(Html.fromHtml("<a href=`http://www.google.co.in`>Google</a>")); 

Android codice manifesto è

<action android:name="android.intent.action.VIEW" /> 
<category android:name="android.intent.category.DEFAULT" /> 
<category android:name="android.intent.category.BROWSABLE" /> 

Grazie in anticipo.

+0

backtick non sono utilizzati in HTML per delimitatori di stringa. Usa '\" 'in Java per incorporare le virgolette all'interno di una stringa quotata.Essi anche sbarazzarsi di' setClickable() 'e' setMovementMethod() ', come quelli dovrebbero essere gestiti dal contenuto' TextView' proposto. – CommonsWare

risposta

5

Sostituire solo questo link, funzionerà:

 TextView textView=(TextView) findViewById(R.id.link); 
     textView.setClickable(true); 
     String linkTxt=getResources().getString(R.string.link); 
     textView.setMovementMethod(LinkMovementMethod.getInstance()); 
     textView.setText(Html.fromHtml(linkTxt)); 

Aggiungi questo strings.xml:

<string name="link">&lt;a href=http://www.google.co.in&gt;Google&lt;/a&gt;</string> 
+0

Grazie. Funziona, ma come aggiungere il mio titolo personalizzato Google. – Sekar

+0

Grazie akash. Sta funzionando. – Sekar

+0

non funziona – JosephM

0

Non funziona perché non è possibile impostare un href su TextView.

Avrai bisogno di impostare un OnClickListener, che ha questo nel suo onClick metodo:

String url = "http://www.google.co.in"; 
Intent i = new Intent(Intent.ACTION_VIEW); 
i.setData(Uri.parse(url)); 
startActivity(i); 

Dopo di che è possibile impostare l'ascoltatore al TextView in questo modo: googleLink.setOnClickListener(myListener);

quindi eseguire di nuovo l'applicazione e il clic dovrebbe essere gestito correttamente.

+0

Grazie. Funziona, ma il collegamento ipertestuale non viene visualizzato Come impostare il collegamento ipertestuale – Sekar

+0

È possibile utilizzare il metodo 'setText (" http://www.google.co.in ")' di 'TextView' per questo.1 – keyboardsurfer

+0

Grazie. ma quando posso usare il 'setText (" Google ");' metodo di 'TextView' in quel momento il collegamento ipertestuale non appare – Sekar