Je choisis l'indice d'un tableau à partir d'un plist. C'est un dictionnaire avec 10 lignes différentes avec de la ficelle.Prendre un objet dans NSArray et le mettre au hasard dans les étiquettes
NSArray* tableau = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"codes" ofType:@"plist"]];
NSDictionary* phrase = [tableau objectAtIndex:nombreChoisi];
Je voudrais prendre 6 éléments et cela pour transmettre les mettre en 6 étiquettes au hasard
J'ai essayé dans une nouvelle NSMutableArray, mais il ne fonctionne pas:
NSArray* tableau = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"codes" ofType:@"plist"]];
NSDictionary* phrase = [tableau objectAtIndex:nombreChoisi];
NSString *phraseMelange1 = [phrase objectForKey:@"texte1"] ;
NSString *phraseMelange2 = [phrase objectForKey:@"texte2"] ;
NSString *phraseMelange3 = [phrase objectForKey:@"texte3"] ;
NSString *phraseMelange4 = [phrase objectForKey:@"texte4"] ;
NSString *phraseMelange5 = [phrase objectForKey:@"texte5"] ;
NSString *phraseMelange6 = [phrase objectForKey:@"texte6"] ;
NSMutableArray *tableauMelange = [[NSMutableArray alloc] initWithObjects:
phraseMelange1,
phraseMelange2,
phraseMelange3,
phraseMelange4,
phraseMelange5,
phraseMelange6,
nil];
for(int i=0;i<6;i++)
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte1.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte2.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte3.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte4.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte5.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
{
int idx;
idx = random()%[tableauMelange count];
NSString* titre = [tableauMelange objectAtIndex:idx];
texte6.text = titre;
[tableauMelange removeObjectAtIndex:idx];
}
[tableauMelange release];
J'essaie aussi cela avec:
NSMutableArray *array;
array=[[phrase allKeys] mutableCopy];
mais il donne moi les clés et non la valeur sans possibilité de choisir celles dont j'ai besoin.
Merci pour votre aide.
Qu'est-ce qui ne fonctionne pas à ce sujet? Pouvez-vous être plus précis sur les erreurs/les mauvais comportements que vous voyez? – fbrereto