如何创建多个问题?

时间:2010-12-21 04:14:27

标签: iphone objective-c cocoa cocoa-touch xcode

我需要从一个plist中检索6个问题并检查答案是否从plist本身正确?

我将使用QR码扫描程序api扫描答案,api将转换为字符串并从plist中读取以检查答案是否正确...是否有任何教程或参考资料供我查看@? ?

在我的plist中有: 问题〜带有以下字符串的字典:

NumberOfOption~定义问题是多项选择还是QR码问题 问题〜问题本身 回答〜回答自己 选项1~4~如果是多项选择题

提前感谢您回答我的问题,我很感激

欢呼声

德斯蒙德

3 个答案:

答案 0 :(得分:2)

使用以下代码将数据读入字典数组(假设您的plist在主包中)

// Path to the plist (in the application bundle)
NSString *path = [[NSBundle mainBundle] pathForResource:
    @"questionArray" ofType:@"plist"];

// Build the array from the plist  
NSMutableArray *qArray = [[NSMutableArray alloc] initWithContentsOfFile:path];

然后你可以迭代你的问题,如:

// iterate questions
for (NSDictionary *dic in qArray)
{
    //perform your reading of 'NumberOfOption' etc from dic object here. 
}

答案 1 :(得分:1)

根据您的plist的结构,您可以使用[NSArray arrayWithContentsOfFile:...];[NSDictionary dictionaryWithContentsOfFile:...];将其读入内存。除此之外,它实际上取决于你的plist的结构,输入的输入方式等等。

答案 2 :(得分:1)

我希望您1.plist有疑问,2.plist有相应的答案。在这种情况下,您应该使plist仅包含数组。

但是在你的情况下,你的问题plist中有其他信息,比如选项,所以你应该使用这个plist的字典结构,并使其他plist成为一个数组。遵循数组结构非常容易访问并存储您的问题,但是在字典的情况下,您应该小心谨慎。

我建议您应该在两个plist中使用相同的相应键存储问题和答案。对于问题编号1,您使用密钥@“0”和2使用@“1”,依此类推。因此从2获取答案将更容易。

希望这有帮助。