Aller au contenu

[Résolu] XML dynamique dans un tableau


Gnaag

Recommended Posts

Bonjour,

je cherche un moyen de mettre dans mon fichier string.xml des phrases dynamique, mais dans un tableau, pour ensuite aller lire une de ces phrases de manière aléatoire.

Par exemple, dans le tableau suivant, il faudrait que je puisse utiliser la variable %d afin de la remplacer par un TextEdit que l'utilisateur aura rempli auparavant, pour ensuite, de manière aléatoire, lui dire bonjour ou aurevoir (je prends ca a titre d'exemple, je sais que ca parait stupide ^^)

<string-array name="Liste">

<item >Bonjour, %d</item>

<item >Aurevoir, %d</item>

</string-array>

je sais que pour une phrase classique ( <string name="Hello">Bonjour, %d</string> ) je devrais faire ca :

String message = String.format(getString(R.string.Hello), "toto" );

Le "toto" pouvant être remplacer par une variable. Mais la, avec le tableau ainsi que la lecture aléatoire de l'item, je suis un peu perdu..

Quelqu'un aurait il une solution a me proposer?

Cordialement, Gnaag.

Modifié par Gnaag
Lien vers le commentaire
Partager sur d’autres sites

Tu fais la même chose que pour chaîne seule, mais appliqué à un des éléments du tableau de chaînes, que tu auras récupéré auparavant

String[] chaines = getResources().getStringArray(R.array.id_de_mon_tableau_de_chaine);
String message = String.format( chaines[indexDeLaChaineAFormatter], "toto");

Modifié par chpil
  • Like 1
Lien vers le commentaire
Partager sur d’autres sites

  • 3 weeks later...
  • 1 month later...

Bonjour,

Je me permet de m'incruster ici, mais j'ai un peu le même problème:

je voudrais mettre un textview contenant uniquement une chaine de formatage,donc "%d" et l'application vient mettre le texte qu'il faut.

Je débute sous android, j'avoue...

Complément d'info:

mon strings.xml contient:

<string name="lien_alerte">%s</string>

et dans mon code, j'ai tenté ça:

 String lien = "http://www.google.fr";
 final String ReDefinition_lien = String.format(getString(R.string.lien_alerte), lien);

je n'ai us d'erreur, mais rien ne s'affiche à la place prévu! Faut il 'forcer' la réécriture du texte à l'écran?

Résolu aussi. Désolé du dérangement

Modifié par rsuinux
Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...