android - org - Quiero ver el texto como un enlace seleccionable
texto diario 2019 (8)
Aquí está la implementación simple probada hasta Android N
String termsText = "By registering, you are agree to our";
String termsLink = " <a href=https://www.yourdomain.com/terms-conditions.html >Terms of Service</a>";
String privacyLink = " and our <a href=https://www.yourdomain.com/privacy-policy.html >Privacy Policy</a>";
String allText = termsText + termsLink + privacyLink;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
((TextView) findViewById(R.id.text_terms_conditions)).setMovementMethod(LinkMovementMethod.getInstance());
((TextView) findViewById(R.id.text_terms_conditions)).setText(Html.fromHtml(allText, Html.FROM_HTML_MODE_LEGACY));
} else {
((TextView) findViewById(R.id.text_terms_conditions)).setMovementMethod(LinkMovementMethod.getInstance());
((TextView) findViewById(R.id.text_terms_conditions)).setText(Html.fromHtml(allText));
}
<TextView
android:id="@+id/link"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="Forget password?"
android:autoLink="all"
android:linksClickable="true"
android:textColor="@color/lgreen"
android:textStyle="italic"
/>
Android está resaltando los enlaces en TextView, pero no responden a los clics. Alguien me puede decir cómo puedo hacer eso como un clic y pasar a otro enlace. Probé más veces viendo ejemplos. pero no puedo Alguien me puede explicar claramente cómo cambiar la vista de texto como un enlace en el que se puede hacer clic.
En el archivo de cadena poner este código
<string name="link">''<a href="http://www.www.com" >ForGet Password</a>''</string>
y en el archivo XML
android:text="@string/link"
En su método onCreate()
ponga este código:
TextView clickableTextLink = (TextView)findViewById(R.id.your_textview_id); clickableTextLink.setMovementMethod(LinkMovementMethod.getInstance());
Probé varias soluciones. Pero esto funcionó perfectamente para mí.
Este es el código más fácil y comprensible.
TextView link = (TextView) findViewById(R.id.hyper);
String linkText = "This is my website <a href=''http://programondaspot.blogspot.com''>Programondaspot</a> .";
link.setText(Html.fromHtml(linkText));
link.setMovementMethod(LinkMovementMethod.getInstance());
Echa un vistazo a esta post !
¡CÓDIGO FELIZ!
Puede agregar un detector de clics a TextView e iniciar la búsqueda web:
textView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view)
{
Intent browser= new Intent(Intent.ACTION_VIEW, Uri.parse(PASTE_YOUR_URL_HERE));
startActivity(browser);
}
});
y xml se ve como:
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/link_string"
android:textSize="14dp"
android:autoLink="web" />
Simplemente agregue la etiqueta onClick a su TextView que es igual a la función definida. Como abajo
<TextView
android:id="@+id/link"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="Forget password?"
android:autoLink="all"
android:linksClickable="true"
android:textColor="@color/lgreen"
android:textStyle="italic"
android:onClick="callFunction"/>
Todo probado y funcionando al 100%.
abajo hay un ejemplo completo
Solución: Android: autoLink = "web"
Muestra xml
<TextView
android:id="@+id/txtLostpassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:autoLink="email"
android:gravity="center"
android:padding="20px"
android:text="@string/lostpassword"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/txtLostpassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:autoLink="web"
android:gravity="center"
android:padding="20px"
android:text="@string/defaultpassword"
android:textAppearance="?android:attr/textAppearanceSmall" />
Cadena en string.xml
<string name="lostpassword">If you lost your password please contact <a href="mailto:[email protected]?Subject=Lost%20Password" target="_top">[email protected]</a></string>
<string name="defaultpassword">User Guide <a href="http://www.cleverfinger.com.au/user-guide/">http://www.cleverfinger.com.au/user-guide/</a></string>
esta es la respuesta EDITADA
Hola, puedes intentar reemplazando esto en tu archivo layout.xml
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="visit the site at www.google.com from here"
android:autoLink="all"
android:clickable="true"
android:linksClickable="true"
android:textAppearance="?android:attr/textAppearanceLarge" />
Lo he probado y seguramente funcionará. y trata "www.google.com" como enlace web