Android Single TextView avec deux couleurs différentes


Exemple

Le texte coloré peut être créé en transmettant le texte et un nom de couleur de police à la fonction suivante:

private String getColoredSpanned(String text, String color) {
    String input = "<font color=" + color + ">" + text + "</font>";
    return input;
}

Le texte en couleur peut alors être défini sur un TextView (ou même sur un Button , EditText , etc.) en utilisant l'exemple de code ci-dessous.

Tout d'abord, définissez un TextView comme suit:

TextView txtView = (TextView)findViewById(R.id.txtView);

Ensuite, créez un texte de couleur différente et assignez-le aux chaînes:

String name = getColoredSpanned("Hiren", "#800000");
String surName = getColoredSpanned("Patel","#000080");

Enfin, définissez les deux chaînes de couleurs différentes sur le TextView :

txtView.setText(Html.fromHtml(name+" "+surName));

Capture d'écran de référence:

Capture d'écran montrant le résultat du code ci-dessus