Dans les chaînes Android, vous pouvez définir des pluriels pour gérer les traductions en fonction du nombre réel fourni à la chaîne comme décrit here. Les chaînes permettent également de spécifier plusieurs paramètres de position similaires à ce que fait sprintf
dans de nombreuses langues.Android Plural Strings avec plusieurs paramètres
Cependant, tenez compte de la chaîne suivante:
<resources>
<string name="remaining">%1$d hours and %2$d minutes remaining.</string>
</resources>
Il contient deux chiffres, comment pourrais-je transformer à un pluriel dans Android? Tous les exemples fonctionnent toujours avec un seul paramètre. Est-ce seulement possible?
getRelativeTimeSpanString semble être un bon choix pour mon problème mais ne résoudrait pas ma question initiale. Avoir un texte avec plusieurs numéros n'est pas si rare ("Vous avez 5 mails et 3 messages", "Il reste 5 Dollars et 83 cents."). Je ne vois pas comment je spécifierais le XML pour la version getQuantityString que vous suggérez. –
regardez le premier lien, j'ai posté. Les documentations indiquent que la quantité sera utilisée pour choisir la chaîne et le troisième argument pour la formater. – Blackbelt
Désolé, je ne comprends pas.Pouvez-vous développer votre réponse avec un exemple de a) le XML pour configurer une chaîne pour les 4 formes plurielles nécessaires pour "Vous avez 5 mails et 3 messages" et b) l'appel à getQuantityString avec des mails et des messages comme quantités d'entrée? –