143 votes

Comment puis-je obtenir des hyperliens cliquables dans AlertDialog provenant d’une ressource de chaîne ?

Ce que je suis en train d'accomplir est d'avoir cliquables liens hypertexte dans le texte du message affiché par un AlertDialog. Alors que l'AlertDialog mise en œuvre heureux souligne et des couleurs tout lien hypertexte (défini à l'aide de <a href="..."> dans la ressource de chaîne passée au Constructeur.setMessage) fourni les liens ne deviennent cliquables.

Le code que j'utilise actuellement ressemble à ceci:

new AlertDialog.Builder(MainActivity.this).setTitle(
        R.string.Title_About).setMessage(
        getResources().getText(R.string.about))
        .setPositiveButton(android.R.string.ok, null)
        .setIcon(R.drawable.icon).show();

J'aimerais éviter d'utiliser une WebView pour juste afficher un extrait de texte, donc, tous les conseils comment obtenir ce travail est très apprécié!

214voto

emmby Points 35359

Je n’aimais pas vraiment la réponse actuellement plus populaire car il modifie considérablement la mise en forme du message dans la boîte de dialogue.

Voici une solution qui sera linkify votre texte de la boîte de dialogue sans changer le style de texte :

131voto

dtmilano Points 26472

Si vous êtes seulement montrant quelques texte et l’URL [s] dans votre boîte de dialogue peut-être la solution est plus simple

Comme indiqué ici http://picasaweb.google.com/lh/photo/up29wTQeK_zuz-LLvre9wQ?feat=directlink

Alert dialog with clickable links

56voto

DeRagan Points 10551

Cela devrait faire `` balises pour obtenir mis en évidence aussi bien. Veuillez noter que je viens d’ajouter quelques lignes de code d’emmby. crédit tant pour lui

13voto

vinc3m1 Points 1664

En fait, si vous voulez simplement utiliser une chaîne sans traiter avec tous les points de vue, le moyen le plus rapide est de trouver message textview et linkify il :

12voto

JFTR, voici la solution que j’ai figuré dehors après un certain temps :

La about.xml correspondante emprunté comme un fragment provenant des sources Android ressemble à ceci :

Les parties importantes affectez linksClickable à true et setMovementMethod(LinkMovementMethod.getInstance()).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X