我尝试将项目从NSMutableArray复制到另一个。
我在我的两个第一个MutableArray(storiesRSS1
和storiesRSS2
)中添加了项目:
[item setObject:currentTitle forKey:@"title"];
[item setObject:currentLink forKey:@"link"];
[item setObject:currentSummary forKey:@"summary"];
[item setObject:currentDate forKey:@"date"];
[item setObject:currentImage forKey:@"image"];
[item setObject:currentMovie forKey:@"movie"];
[storiesRSS1 addObject:[item copy]];
[item setObject:currentTitle forKey:@"title"];
[item setObject:currentLink forKey:@"link"];
[item setObject:currentSummary forKey:@"summary"];
[item setObject:currentDate forKey:@"date"];
[item setObject:currentImage forKey:@"image"];
[item setObject:currentMovie forKey:@"movie"];
[storiesRSS2 addObject:[item copy]];
对于这两个阵列,它可以工作。
之后我想在第三个数组(stories
)中混合使用。
int i=0;
int nbElement=[storiesRSS1 count]+[storiesRSS2 count];
while (i<nbElement) {
if (i<[tempArrayTed count]) {
[stories addObject:[storiesRSS1 objectAtIndex:i]];
}
if (i<[tempArrayYoutube count]) {
[stories addObject:[storiesRSS2 objectAtIndex:i]];
}
i++;
}
但是当我尝试展示每件商品时,它总是null
!
你能帮助我吗,谢谢。
答案 0 :(得分:4)
NSMutableArray
有addObjectsFromArray
:您可能觉得有用的方法。
[stories addObjectsFromArray:storiesRSS1];
[stories addObjectsFromArray: storiesRSS2];
另一方面,当你这样做时,你会泄漏内存:
[storiesRSS1/2 addObject:[item copy]];
答案 1 :(得分:0)
听起来stories
是零。发送给nil的任何消息都会返回nil。
答案 2 :(得分:0)
尝试使用此代码:
stories=nil;
[stories release];
stories=[[NSMutableArray alloc]init];
int i=0;
int nbElement=[storiesRSS1 count]+[storiesRSS2 count];
while (i<nbElement) {
if (i<[tempArrayTed count]) {
[stories addObject:[storiesRSS1 objectAtIndex:i]];
}
if (i<[tempArrayYoutube count]) {
[stories addObject:[storiesRSS2 objectAtIndex:i]];
}
i++;
}
因为看起来你可能没有为故事数组分配内存。希望有效。如果不是这样,那就试着打印故事RSSS1和故事RSS2阵列。