Texto de enlace de Android: texto que se puede leer en una vista de texto único: como un tweet de Twitter

Tengo un textView y un texto como

“Este es el texto simple con KeyWord y el enlace para navegar”

en el texto anterior quiero hacer …

Al hacer clic en el enlace va a abrir esa URL Y al hacer clic en esa palabra clave, se abre una nueva actividad en mi aplicación

Además, hay un evento de clic para todo TextView, incluso.

Por favor, ayúdame a encontrar una solución. Gracias, MKJParekh

Lo que puede hacer es crear un ClickableSpan personalizado como se muestra a continuación,

 class MyCustomSpannable extends ClickableSpan { String Url; public MyCustomSpannable(String Url) { this.Url = Url; } @Override public void updateDrawState(TextPaint ds) { // Customize your Text Look if required ds.setColor(Color.YELLOW); ds.setFakeBoldText(true); ds.setStrikeThruText(true); ds.setTypeface(Typeface.SERIF); ds.setUnderlineText(true); ds.setShadowLayer(10, 1, 1, Color.WHITE); ds.setTextSize(15); } @Override public void onClick(View widget) { } public String getUrl() { return Url; } } 

Y el uso de su onClick() para abrir una Actividad o URL. Estoy agregando una demostración para cargar una URL en WebView .

 String text = "http://www.google.co.in/"; SpannableStringBuilder stringBuilder = new SpannableStringBuilder(text); MyCustomSpannable customSpannable = new MyCustomSpannable( "http://www.google.co.in/"){ @Override public void onClick(View widget) { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse(customSpannable.getUrl())); startActivity(intent); } }; stringBuilder.setSpan(customSpannable, 0, text.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); textView.setText( stringBuilder, BufferType.SPANNABLE ); textView.setMovementMethod(LinkMovementMethod.getInstance()); 

Genere su TextView de la siguiente manera:

 TextView t3 = (TextView) findViewById(R.id.text3); t3.setText(Html.fromHtml("This is the Simple Text with Keyword and the Link to browse")); t3.setMovementMethod(LinkMovementMethod.getInstance()); 

Especifique su actividad de la siguiente manera:

             

Creo que debería funcionar. Puede requerir algunos ajustes. No tuve tiempo de probarlo. Déjame saber si funciona.

He usado lo mismo que respondí aquí en esta pregunta

Para eso he usado este LinkEnabledTextView y me resulta fácil hacer la tarea.

Haga que la palabra clave y el enlace se encuentren en diferentes TextViews.

Luego configure TextView.onClickListener () después de hacer esto.

Esta es la forma más fácil y más lógica.