Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
Chapitre 19
Utilisation des ressources 201
code Java à l’aide de getString(), en lui passant l’identifiant de ressource de la chaîne,
c’est-à-dire son nom unique préfixé par R.string (comme getString(R.string.whisky)).
Formats de chaînes
Comme les autres implémentations du langage Java, la machine virtuelle Dalvik
d’Android reconnaît les formats de chaînes. Ces formats sont des chaînes contenant des
marqueurs d’emplacements et seront remplacés lors de l’exécution par des données variables (Mon nom est %1$s, par exemple). Les chaînes normales stockées sous forme de
ressources peuvent être utilisées comme des formats de chaînes :
String strFormat=getString(R.string.mon_nom);
String strResult=String.format(strFormat, "Tim");
((TextView)findViewById(R.id.un_label))
.setText(strResult);
Texte stylé
Pour enrichir du texte, vous pourriez utiliser des ressources brutes contenant du HTML,
puis les placer dans un widget WebKit. Cependant, pour un formatage léger utilisant ,
et , une ressource chaîne fera l’affaire :
Ce texte est en gras.
Alors que celui-ci est en italiques !
Vous pouvez ensuite y accéder comme n’importe quelle autre chaîne normale, sauf que
le résultat de l’appel à getString() sera ici un objet implémentant l’interface
android.text.Spanned :
((TextView)findViewById(R.id.autre_label))
.setText(getString(R.string.i));
Formats stylés
Les styles deviennent compliqués à gérer lorsqu’il s’agit de les utiliser avec les formats de
chaînes. En effet, String.format() s’applique à des objets String, pas à des objets
Spanned disposant d’instructions de formatage. Si vous avez vraiment besoin de formats
de chaînes stylés, vous pouvez suivre ces étapes :
1. Dans la ressource chaîne, remplacez les chevrons par des entités HTML (Je suis
<b>%1$s</b>, par exemple).
2. Récupérez la ressource comme d’habitude, bien qu’elle ne soit pas encore stylée (avec
getString(R.string.format_style)).
Livre Android.book Page 201 Dimanche, 8. novembre 2009 12:23 12
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
Chapitre 19
Utilisation des ressources 201
code Java à l’aide de getString(), en lui passant l’identifiant de ressource de la chaîne,
c’est-à-dire son nom unique préfixé par R.string (comme getString(R.string.whisky)).
Formats de chaînes
Comme les autres implémentations du langage Java, la machine virtuelle Dalvik
d’Android reconnaît les formats de chaînes. Ces formats sont des chaînes contenant des
marqueurs d’emplacements et seront remplacés lors de l’exécution par des données variables (Mon nom est %1$s, par exemple). Les chaînes normales stockées sous forme de
ressources peuvent être utilisées comme des formats de chaînes :
String strFormat=getString(R.string.mon_nom);
String strResult=String.format(strFormat, "Tim");
((TextView)findViewById(R.id.un_label))
.setText(strResult);
Texte stylé
Pour enrichir du texte, vous pourriez utiliser des ressources brutes contenant du HTML,
puis les placer dans un widget WebKit. Cependant, pour un formatage léger utilisant ,
et , une ressource chaîne fera l’affaire :
Vous pouvez ensuite y accéder comme n’importe quelle autre chaîne normale, sauf que
le résultat de l’appel à getString() sera ici un objet implémentant l’interface
android.text.Spanned :
((TextView)findViewById(R.id.autre_label))
.setText(getString(R.string.i));
Formats stylés
Les styles deviennent compliqués à gérer lorsqu’il s’agit de les utiliser avec les formats de
chaînes. En effet, String.format() s’applique à des objets String, pas à des objets
Spanned disposant d’instructions de formatage. Si vous avez vraiment besoin de formats
de chaînes stylés, vous pouvez suivre ces étapes :
1. Dans la ressource chaîne, remplacez les chevrons par des entités HTML (Je suis
<b>%1$s</b>, par exemple).
2. Récupérez la ressource comme d’habitude, bien qu’elle ne soit pas encore stylée (avec
getString(R.string.format_style)).
Livre Android.book Page 201 Dimanche, 8. novembre 2009 12:23 12
