2012-02-21 35 views
1

我只是深入研究Objective C和Cocoa Touch,并试图构建一个应用程序供个人使用。如何为iPhone应用程序创建随机选择的NSString“包”

我的目标是创建一个应用程序,在iPhone屏幕上的中心窗口中显示随机NSString,同时还在屏幕侧面的另一个窗口中显示相关NSString的可滚动列表。例如:如果中心NSString是一个动物的名字,比如“Lion”,它旁边列表中的NSString也是动物(例如“Tiger”,“雪豹”等)

我想创建关联NSStrings的“包”,让程序随机选择一个“包”,随机在其中心显示一个NSString,同时在包中显示其他NSString的列表可滚动的侧窗口在给定的时间间隔之后,程序将循环并选择另一个NSString,不包括之前显示的“包”中的那些。

我的主要兴趣是如何创建NSStri的“包” NGS。使用NSDictionary或NSArray创建它们是否可行?

因为我刚刚开始,我希望有人能指点我在我的研究中正确的方向,以便我知道我应该用什么工具开始试验。

我非常感谢任何建议或示例代码。

谢谢!

+0

你是问有关这些程序包将如何存储获得所有钥匙? – ThomasW 2012-02-21 03:05:14

+0

如滚动列表一样,列表可以自行移动,或者用户可以点击并拖动以滚动列表? – Tim 2012-02-21 03:05:30

+0

@ThomasW,是的,我问的是如何存储软件包。我刚刚得到了一个很好的答案,它使用NSArray和NSDictionary。你有另外的代码吗? – 2012-02-21 03:29:11

回答

1

对它使用NSArray和NSDictionary。

例如:

NSArray *animalArray = [NSArray arrayWithObjects:@"cat", @"dog", ... , nil]; 
NSArray *drinkArray = [NSArray arrayWithObjects:@"coke, @"tea", ... , nil]; 
... 

NSMutableDictionary *wordsDictionary = [[NSMutableDictionary alloc] init]; 
[wordsDictionary addObject:animalArray forKey:@"animal"]; 
[wordsDictionary addObject:drinkArray forKey:@"drink"]; 
... 

,并且可以使用[NSDictionary allKeys]

+0

非常感谢代码@Hanon!我有一个关于随机化的问题:我能够使用[NSDictionary allKeys]随机访问键来显示吗? – 2012-02-21 03:36:13

+0

是的。 '[[wordsDictionary allKeys] objectAtIndex:arc4rand()%[wordsDictionary count]]' – Tim 2012-02-21 03:37:55

+0

太棒了。谢谢大家的帮助!我要去了.. – 2012-02-21 03:51:31

相关问题