2011-04-08 8 views
7

Tengo una casilla de verificación que tiene este texto: "Acepto los términos y condiciones". Necesito que los "términos y condiciones" sean azules, subrayados y abra una página web cuando los toque.Coloque un hipervínculo en el texto de una casilla de verificación?

Encontré la clase Linkify (http://developer.android.com/reference/android/text/util/Linkify.html), pero esto parece convertir las URL que ya están en el texto en enlaces.

¿Cómo puedo hacer esto?

Respuesta

3

Coloree el texto en azul y añádale un OnClick Listener que inicie la intención de ver la URL. Puede marcar su texto usando HTML como sintaxis a través del Html.fromHtml(). Ver this answer para una mejor explicación y ejemplo.

+0

Bien, pero ¿cómo hago esto solo para los términos y condiciones de la subcadena? –

+1

actualizado para reflejar su requisito adicional. –

+0

Gracias, eso es exactamente lo que necesito. –

15

sólo tiene que utilizar la cadena como

"Estoy de acuerdo con la < a href =" ... "> términos y condiciones </a>"

y establecer método de movimiento:

mCheckBoxTermsOfUse = (TextView) findViewById(R.id.checkBoxTermsOfUse); 
mCheckBoxTermsOfUse.setMovementMethod(LinkMovementMethod.getInstance()); 

Consulte api demos para obtener detalles

+0

que funciona, ¡gracias! – pawegio

+0

Si agrego la función 'setMovementMethod()', no veo el texto inmediatamente, pero solo después de hacer clic una vez. ¿Hay alguna solución? – offset

Cuestiones relacionadas