HTML

Résolu/Fermé
drBalise Messages postés 28 Date d'inscription lundi 18 mai 2015 Statut Membre Dernière intervention 6 juillet 2016 - 1 juil. 2016 à 16:03
drBalise Messages postés 28 Date d'inscription lundi 18 mai 2015 Statut Membre Dernière intervention 6 juillet 2016 - 6 juil. 2016 à 17:29
Salut! :) J'ai une préoccupation concernant l'utilisation du HTML avec android studio. Au niveau de l'affichage du Html qui est dans le textView, la méthode Html.fromHtml permet d'afficher le message.Cependant, il est barrée avec ce message au survol:'fromHtml(java.lang.string)' is deprecated
J'utilise l'API 24. Et Après recherche, je me suis rendu compte qu'apparemment, cette méthode ne marche plus. Existe t-il une méthode pour palier à cela? Si oui laquelle? Aider moi je vous prie.

1 réponse

KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 3 020
1 juil. 2016 à 19:56
Bonjour,

Une méthode est généralement dépréciée au profit d'une autre, pour savoir laquelle prendre à la place, il faut regarder dans la documentation :

https://developer.android.com/reference/android/text/Html.html#fromHtml(java.lang.String)
Spanned fromHtml (String source)

This method was deprecated in API level 24.
use
fromHtml(String, int)
instead.

Remarque : déprécié ça ne veut pas forcément dire que ça ne marche plus, généralement ces méthodes sont conservées en l'état pour garantir la rétrocompatibilité.
0
drBalise Messages postés 28 Date d'inscription lundi 18 mai 2015 Statut Membre Dernière intervention 6 juillet 2016
1 juil. 2016 à 22:33
Ah D'accord! Merci KX! j'ai également lu la documentation mais, j'ai du mal à comprendre les paramètres. Supposons que nous voulons afficher le message "Bonjour le <i>monde</i>". Si je comprends bien, la syntaxe sera la suivante:
Spanned fromHtml("Bonjour le <i>monde</i>", int) C'est bien ça????
0
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 3 020
1 juil. 2016 à 23:01
Spanned fromHtml("Bonjour le <i>monde</i>", int) 

Euh...

Spanned fromHtml (String source)
et
Spanned fromHtml(String, int)
ce sont les signatures des méthodes, mais tu ne dois pas les mettre tel quel dans le code !

De même que tu as remplacé le String par "Bonjour le <i>monde</i>" tu dois remplacer le int par sa valeur, en l’occurrence avec une combinaison des constantes FROM_HTML telles que listées dans la documentation :

https://developer.android.com/reference/android/text/Html.html

De plus, il ne s'agit pas juste de mettre Spanned devant, mais de récupérer un objet du type Spanned...

Exemple :
String source = "Bonjour le <i>monde</i>";
int flags = Html.FROM_HTML_MODE_LEGACY;
Spanned s = Html.fromHtml(source, flags);

Pour combiner plusieurs flags on peut faire par exemple :
int flags = Html.FROM_HTML_SEPARATOR_LINE_BREAK_LIST
    | Html.FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM
    | Html.FROM_HTML_SEPARATOR_LINE_BREAK_DIV;
0
drBalise Messages postés 28 Date d'inscription lundi 18 mai 2015 Statut Membre Dernière intervention 6 juillet 2016 > KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025
6 juil. 2016 à 17:29
Thank you
0