2012-02-22 13 views
1

私は関連する単語のリストをランダムに表示する個人用のアプリを開発中です。NSDictionaryの中からNSArrayリストを表示していますか?

このコミュニティの助けを借りて、関連する単語のリストをNSArraysに追加しました。たとえば、次のように

NSArray *catList = [NSArray arrayWithObjects:@"Lion", @"Snow Leopard", @"Cheetah", nil]; 
NSArray *dogList = [NSArray arrayWithObjects:@"Dachshund", @"Pitt Bull", @"Pug", nil]; 
... 

そして私はNSDictionaryのにそれらの配列を入れている:

NSMutableDictionary *wordDictionary = [[NSMutableDictionary alloc] init]; 
     [wordDictionary setObject: catList forKey:@"Cats"]; 
     [wordDictionary setObject: dogList forKey:@"Dogs"]; 
... 

私は何をしたいのは、ランダムにNSDictionaryのキーのいずれかを選択して開催されたNSStringsの一覧を表示していますその配列で。明らかに[wordDictionary objectForKey: @"Cats"];は、私がCatsキーに設定されたcatList配列にアクセスして、配列に保持されている文字列リストを表示することを可能にします。しかし、リストを無作為に、キーを指定せずに表示したいと思います。

私は[wordDictionary allKeys]を実験しましたが、キーの名前はランダムに表示できますが、配列に保持されているリストはランダムに表示できませんでした。

誰にもNSDictionaryからNSArrayリストを表示するためのポインタがありますか?

ありがとうございました。

答えて

2

これは何ですか?

NSInteger keyCount = [[wordDictionary allKeys] count]; 
NSInteger randomKeyIndex = random() % keyCount; 
NSString *randomKey = [[wordDictionary allKeys] objectAtIndex:randomKeyIndex]; 
NSArray *randomlySelectedArray = [wordDictionary objectForKey:randomKey]; 
+0

すごく早かった。それがまさに私が必要としていたものです。大変ありがとうございました!あなたが私の尋ねに気にしないなら、どれくらいの時間あなたはコーディングしていますか?私はちょうど2週間前に始まりました。あなたが推薦する客観的な情報源はありますか?再度、感謝します。 –

+1

私はほぼ11年間パートタイムで、2ヶ月間フルタイムでプログラミングしてきました。 Big Nerd Ranchはプログラミングの本を訓練し出版する会社です。私は2本の本を読んで、すべての課題を完了しました。がんばろう! – bneely

関連する問題