Aller au contenu

Parcourir un dictionnaire et TextView


Messages recommandés

Bonjour, j'ai un probleme dans l'affichade des element contenu dans un dictionnaire

j'ai une variable de type NSMutableArray que j'appelle "dico" et elle contient des dictionnaires:

 

(
  {
	    NbreSecEnCours = 2;
   },
	    {
	    GuidSession = "12729c94-1bf6-49ac-beca-e3c99609aded";
	    NameMach = T2037;
	    NomAppli = Notepad;
   },
	    {
	    GuidSession = "12729c94-1bf6-49ac-beca-e3c99609aded";
	    NameMach = T2037;
	    NomAppli = nslookup;
   }
)

 

Voici comment j'essai de le parcourir afin d'y afficher les element dans une texte View

 

dico=[theSender parseReponse84];

   //Vu que mon premier element sera tjrs le nombre de session je le recupere d'abord tout seul et je le traite
   /*traitement du premier dictionnaire */
   NSDictionary *nbreSessDic = [[NSDictionary alloc]init ];
   nbreSessDic= [dico objectAtIndex:0];
   NSEnumerator* e=[nbreSessDic keyEnumerator];
   NSString * key,*nbreSess;
   while (key=[e nextObject]) {
    nbreSess=[nbreSessDic objectForKey:key];
   }
 //Fin traitement indice 0
   //Traitement du reste des elements qui sont des dictionnaires contenant les idSession
   if([nbreSess isEqualToString:@"0"]){
    [email protected]"Aucune Application en cours pour l'utilisateur";
    nbreSessActive.text = nbreSess;
   }
   else{
	 NSDictionary *idSessionDic =[[NSDictionary alloc] init];
   for(i=1;i<[dico count];i++){

	    idSessionDic =[dico objectAtIndex:i];
	    NSString  *guidSession,*nameMach,*nomAppli;

	    guidSession=[idSessionDic objectForKey:@"GuidSession"];
		    NSLog(@"guidSession : %@",guidSession);
	    nameMach=[idSessionDic objectForKey:@"NameMach"];
		    NSLog(@"nameMach : %@",nameMach);
	    nomAppli=[idSessionDic objectForKey:@"NomAppli"];
		    NSLog(@"nomAppli : %@",nomAppli);

//Affcihage dans la textView
	    listeAppUser.text=[NSString stringWithFormat:@"No%d; User: %@ ;GuidSession: %@ ; NameMach: %@ ; NomAppli: %@",i,
		    NomUser,guidSession,nameMach,nomAppli];
    }

    nbreSessActive.text=nbreSess;

   }

 

mais malheuresement dans ma text View j'ai juste les element du deuxieme dictionnaire

 

No2; User: fl_user ;GuidSession: a68654f7-c865-45ba-b17a-039f40d539b9 ; NameMach: T2037 ; NomAppli: nslookup

 

 

au lieu d'avoir les deux elements ds deux dictionnaires comme ceci:

 

No1; User: fl_user ;GuidSession: a68654f7-c865-45ba-b17a-039f40d539b9 ; NameMach: T2037 ; NomAppli: notepad
No2; User: fl_user ;GuidSession: a68654f7-c865-45ba-b17a-039f40d539b9 ; NameMach: T2037 ; NomAppli: nslookup

 

Comment puis je faire pour avoir un resultat comme ci-dessus ?????

Lien à poster
Partager sur d’autres sites

Hello, et bienvenue parmi nous !

 

//Affcihage dans la textView

}

Tu as une erreur, il faut écrire : "Affichage"…

 

Oui bon je sais, mais je corrige ce que je peux hein ! :zz-big-dingue:

Lien à poster
Partager sur d’autres sites
for(i=1;i<[dico count];i++){

 

Bon, j'y connais rien moi, mais il me semble étrange de commencer une boucle

for

à 1

Si tu n'as que deux entrées, ce sera "0" et "1", donc là, tu n'afficheras que ta dernière entrée, et pas la 1ere, non ?

Lien à poster
Partager sur d’autres sites

c'est voulu la boucle for qui commence à 1 mais bon mon probleme est resolu il se trouvait à cette ligne

 

listeAppUser.text=[NSString stringWithFormat:@"No%d; User: %@ ;GuidSession: %@ ; NameMach: %@ ; NomAppli: %@",i,
						    NomUser,guidSession,nameMach,nomAppli];

l'affichage du deuxieme element ecrasait celui du premier element ce qui fait qu'uniquement le dernier element du tableau s'affichait

Lien à poster
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invité
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.

Chargement
×
×
  • Créer...