2011-10-25 4 views
0

J'essaie de créer un texte cliquable en utilisant linkify. Lorsque le nom est cliqué, je veux appeler l'intention de courrier électronique. Cependant, l'adresse e-mail n'est pas la même que la linkify. Existe-t-il un moyen par linkify de faire un mailto: [email protected] quand vous avez le motif "Nom spécifique"? Voici mon code exemple:linkify text to send email?

final TextView tx1=new TextView(this); 
tx1.setAutoLinkMask(0); 
Pattern pattern = Pattern.compile("John Doe"); 
Linkify.addLinks(tx1, pattern, "mailto:[email protected]"); 

Comme vous pouvez le voir ici, cette question est que l'intention de courrier électronique remplit pour le sujet: « [email protected] Doe ». C'est un résultat évident, mais je ne sais pas comment tronquer le texte du patron dans le schéma .... Merci pour votre aide.

ps si vous connaissez un autre moyen ne comportant pas Linkify, vous obtenez le crédit ainsi :)

Répondre

2

J'ai une réponse non-Linkify:

final TextView tx1 = (TextView) findViewById(R.id.email); 
String name = "John Doe"; 
String email = "[email protected]"; 

tx1.setText(Html.fromHtml("<a href=\"mailto:"+email+"\">"+name+"</a>")); 
tx1.setMovementMethod(LinkMovementMethod.getInstance()); 

mais il y a probablement une meilleure façon de fais le.

+0

Je l'avais considéré mais je ne suis pas fou de coder en dur le texte ... C'est une longue chaîne – benbeel

0

Vous pouvez utiliser TransformFilter pour ce cas.