0

我在 iPhone/Xcode 开发方面还是个新手。到目前为止,我制作了一款在应用商店上发布的应用,但它是一款简单的游戏。所以请多多包涵。

现在我正在尝试创建一个基本上类似于多项选择测试的应用程序。我在想它会是这样的:

  1. 显示问题 1 和选项 1
  2. 用户选择答案
  3. 检查用户的答案是否与问题 1 的答案相同
  4. 显示问题 2 和选项 2 等。

通常最好的方法是什么?我是否在每个插槽中创建一个包含“问题、选择和答案键”的数组,然后将它们一个一个加载到屏幕上?这甚至可能吗?我可以在单个数组插槽中包含三个值吗?

谢谢你的帮助。任何输入将不胜感激。

4

2 回答 2

1

您应该使用一个 NSMutableArray 填充单独的 NSDictionaries 包含一堆问题及其答案。每个新的问题和答案都将存储到 NSDictionary 中,并且 NSDictionary 将添加到 NSMutableArray 中。根据游戏的下一关,你可以从NSMutableArray的索引中以NSDictionary的形式在内存中得到新的问答。

IE

    NSMutableArray *arBook = [[NSMutableArray alloc] init];
    NSDictionary *dic1 = [[NSDictionary alloc] initWithObjectsAndKeys:@"Who is CEO of apple?", @"Question", @"Steve Jobs", @"Answer"];
    [arBook addObject:dic1]; 

因此,您可以添加所有问题以及答案。

你清楚吗?

于 2011-08-02T08:16:32.113 回答
1

NSDictionary将对此有好处。你可以让key问题成为问题,并value成为选择。然后你可以有第二个 NSDictionary ,它就是key问题,它value就是答案。以这种方式比较值很容易。

NSDictionary *questions = [[NSDictionary alloc] initWithObjectsAndKeys: firstQuestion, firstChoices, secondQuestion, secondChoices, nil];
NSDictionary *answers = [[NSDictionary alloc] initWithObjectsAndKeys: firstQuestion, firstAnswer, secondQuestion, secondAnswers, nil];

firstQuestion、firstChoices、firstAnswer 等将是您创建并存储在字典中的对象,我推荐使用 NSStrings。

或者,您始终可以创建自己的自定义对象来处理所有这些。

于 2011-08-02T08:07:25.727 回答