如何在iphone应用程序中的字典中存储数组值

时间:2013-01-29 05:28:53

标签: iphone arrays nsdictionary arc4random

我的一个应用程序遇到了麻烦。 我有36张图片& 36声音和36个文本这个名字都相同,现在我要声明数组 这一切都意味着图像阵列的文本阵列和声音阵列,现在随机想要在按钮标签上显示9个图像,同时在同一页面9声音播放一个带有文本的声音 并确定该图像。

所以在这里我声明图像数组和文本数组我也完成了arc4random和获取图像,但现在的问题是如何在这里使用字典,以便我可以存储数据 在这本字典中,我怎么能这样做plz帮助我ontis。

3 个答案:

答案 0 :(得分:1)

您应该创建一个字典对象数组,每个字典对象包含一个图像,一个声音和一个文本对象(相同的名称)。因此,数组将包含36个字典对象,每个字典对象将包含3个对象。

NSMutableArray *combinedArray = [[NSMutableArray alloc] init];
for(i=0;i<36;i++) {
    NSDictionary *dict = [[NSDictionary dictionaryWithObjectsAndKeys:[imageArray objectAtIndex:i], @"image", [textArray objectAtIndex:i], @"text", [soundArray objectAtIndex:i], @"sound", nil]];
    [combinedArray addObject:dict];
}

现在你可以在combinedArray上使用arc4Random,你将在所选的随机索引处拥有所有3个相应的对象。希望这有帮助

答案 1 :(得分:0)

如果你想将数组存储到dictinoary然后写下代码。你要做的是创建3个不同的数组,然后创建for循环。

          for(int i=0;i<some value:i++)
          {
            dictMut=[[NSMutableDictionary alloc]init];
            [dictMut setObject:[dataArrayA objectAtIndex:w] forKey:@"A"];
            [dictMut setObject:[dataArrayB objectAtIndex:w] forKey:@"B"];
            [dictMut setObject:[dataArrayC objectAtIndex:w] forKey:@"C"];
          }

让我知道它的工作与否!!!

快乐编码!!!!

答案 2 :(得分:0)

好吧,我看到了......现在你所做的就是你创造了textarray,soundarray和imagearray。

现在创建这3个数组后,编写如下代码。

        for(int i=0;i<36:i++)
      {
        dictMut=[[NSMutableDictionary alloc]init];
        [dictMut setObject:[textarray objectAtIndex:w] forKey:@"A"];
        [dictMut setObject:[soundarray objectAtIndex:w] forKey:@"B"];
        [dictMut setObject:[imagearray objectAtIndex:w] forKey:@"C"];
      }

,您的数组值将存储在字典中。

让我知道它是否有效!!!!

HaPPY Coding !!!!