Soit tu ajoutes des \n dans ta chaîne de caractères comme dans n'importe quel langage de programmation, soit tu fais un fichier XML pour faire l'interface. Dans Eclipse en plus, tu as droit à une vue graphique de ton fichier XML.
Ta boucle va insérer dix fois dans ton TextView la chaîne "salut
", alors que tu aurais voulu avoir un truc du genre "salut
salut
salut
salut
salut
salut
salut
salut
salut
salut
"
La solution serait plutôt du genre
String salut = "salut\n";
for(int i = 0 ; i < 10 ; i++)
salut = salut.append("salut\n");
coucou.setText(salut);
LE code contient une erreur à la ligne de l'appel de la méthode .append.
Eclipse ne connait pas cette méthode. Dois-je faire un import particulier ?
Ok, finalement ca roule Merci !
C'est drôle, android à un comportement étrange. le code suivant ne s'affiche q'une fois la boucle while
terminé.
import android.R;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class remiActivity extends Activity
{
TextView text = null;
int i = 0;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
text = new TextView(this);
while(i < 100000)
{
i++;
text.append("_*_Salut Mon Pote_*_\n");
setContentView(text);
}
}
}
Dans une console normale, chaque ligne apparaît en temps réel, en fonction de l'instant ou la machine
exécute le code. Et bien ici ce n'est pas le cas... L’écran reste noir environ 5 secondes avant d'afficher mon texte...
Ce code ci ne s'affiche jamais :
import android.R;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class remiActivity extends Activity
{
TextView text = null;
boolean i = true;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
text = new TextView(this);
while(i)
{
text.append("_*_Salut Mon Pote_*_\n");
setContentView(text);
}
}
}
Comment expliqueriez vous ça ?
Y a-t-il un moyen de faire que le code s'exécute comme dans une console normal ou c''est mort avec Android ?
C'est le comportement voulu. Quand tu fais cette boucle avec la console, à chaque itération de la boucle le texte sera écrit dans la console
for(int i = 0 ; i < 10 000 ; i++)
//On écrit le texte dans la console
System.out.println("salut\n");
Le code que tu fais avec Android se contente de rajouter du texte dans ta TextView, qui sera ensuite affiché :
for(int i = 0 ; i < 10 000 ; i++){
//Tu rajoutes du texte dans ta TextView
text.append("_*_Salut Mon Pote_*_\n");
//La TextView devient le contenu affiché dans ton activité
setContentView(text);
}
Seul le dernier "setContentView" sera prit en compte, histoire de ne pas avoir à inflater l'arbre XML à chaque fois, puisque la désérialisation est un processus très lent.
Et de toute façon comme nous sommes dans le onCreate, on se trouve avant l'affichage de l'activité et donc tes modifications répétées ne seraient pas visibles, à l'exception de la dernière puisque c'est elle qui sera d'actualité quand ton activité sera bien créée.
Ton dernier code ajoutera du texte à l'infini sans finir de créer ton activité, qui ne sera pas conséquent jamais visible.
Le message qui suit est une réponse automatique.
Les réponses automatiques nous permettent d'éviter de répéter de nombreuses fois la même chose, et donc de gagner beaucoup de temps.
Nous sommes néanmoins ouverts à toute question ou remarque, n'hésite pas à me contacter par messagerie privée à ce sujet.
Titre du sujet à modifier
Bonjour,
Comme son nom l'indique, ce forum est dédié aux problèmes de développements sur smartphones et tablettes. Vous n'êtes pas sans savoir que les modèles sont nombreux et que les développements sont très différents d'un OS à l'autre. Aussi, il est obligatoire d'ajouter une balise au titre de son sujet afin de bien cadrer le problème.
Exemples de titres corrects :
[iPhone] Problème de curseurs
[Android] Faire un jeu
Exemples de titres incorrects :
Problème de curseurs
Faire un jeu
ca marche pa
Étant donné que ton message est par ailleurs bien présenté, je t'invite à modifier le titre du sujet pour le clarifier.
De plus, le titre idéal devrait résumer ton problème ou ta question en une petite phrase. Voici quelques liens pour t'aider à choisir au mieux ton titre :
Si tu es l'auteur du topic, tu peux uniquement le changer en éditant le premier post du topic à l'aide de l'icône .
Attention : merci de modifier ton titre dans les plus brefs délais, sans quoi le sujet sera fermé.
Merci de ta compréhension
Les modérateurs.
{{Titre incorrect}} Android chaine de caractères.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
"J'aimerai faire un jeu, mais pas un gros jeu hein. Un petit truc simple du style MMO."