将相同的硬编码对象添加到NSDictionary以获取NSMutableArray的计数

时间:2014-02-27 10:10:44

标签: ios objective-c nsmutablearray nsarray nsdictionary

我有一个有5个对象的数组,如下所示:

  NSMutableArray *categoriesMutableNameArray = [NSMutableArray arrayWithArray:[prefs arrayForKey:@"categoriesImageUrl"]];

我从Web服务获取数组值,数组看起来像:fashion,Mens,Ladies,Gadgets。

然后我将数组保存到字典中:

  NSDictionary = @{ @"title" : categoriesMutableNameArray, @"selected": @"No"};

您会注意到我在字典中有一个名为“selected”的硬编码字段:@“No”。

如何使用selected创建另一个数组,以便所选数组等于categoriesMutableNameArray的数量,因此对于categoriesMutableNameArray中的每个条目,我想创建一个选定的对象。我基本上想要以下内容:

NSArray *select = [arraWithObjects:@"No"]; 

但是我想在select数组中添加@“No”,使其与categoriesMutableNameArray的计数相同。

所以如果categoriesMutableNameArray中有4个对象,那么:

时尚,男士,女士,小工具。我希望NSArray *选择具有相同数量的对象categoriesMutableNameArray如此:

NSArray *select  =[arraWithObjects:@"No",@"No",@"No",@"No"]; 

此致

2 个答案:

答案 0 :(得分:0)

试试这个,

 NSMutableArray *categoriesMutableNameArray = [NSMutableArray arrayWithArray:[prefs arrayForKey:@"categoriesImageUrl"]];
 NSMutableArray *array = [[NSMutableArray alloc] init];
 for (id element in categoriesMutableNameArray) {
     [array addObject:@"No"];
 }

 NSDictionary *dict = @{ @"title" : categoriesMutableNameArray, @"selected": array};

答案 1 :(得分:0)

... HM

NSMutableArray *select = [[NSMutableArray alloc] init];
for (int count = 0; count < [categoriesMutableNameArray count]; count++) {
   [select addObject:@"No"];
}