iPhone SDK:更新NSArray中的对象

时间:2010-03-09 15:15:11

标签: iphone nsarray

我有一个(Product)对象的NSArray,它是通过解析来自服务器的XML响应而创建的。

在对象中,它包含图像,文本和整数,URL。等

服务器有2个请求 1:搜索中匹配产品的列表 - 少量细节 2:产品详情:详细信息。

解析第二个请求时,我试图更新数组中的现有对象。

- (void) setProduct:(Product *) _product atIndex: (int) index
{
    [_product retain];
    [productList replaceObjectAtIndex:index withObject:_product];
}

这似乎不起作用,因为当我调用update和table reloadData时,新值不存在。

我应该先删除数组中的对象吗?

3 个答案:

答案 0 :(得分:4)

replaceObjectAtIndex:是NSMutableArray的一种方法。所以你需要让你的productLists成为一个NSMutableArray来使用它。

答案 1 :(得分:1)

-(void)updateprevious:(int)index withArg2:(NSString *)date
{
    NSLog(@"%@",date);
    NSLog(@"%d",index);

    for (int i=0;i < index; i++)
    {
        [final_X replaceObjectAtIndex:i withObject:@""];
    }
}

答案 2 :(得分:0)

  1. 您必须从数据源方法发布更多代码。你在这做什么应该工作正常。
  2. 您的“保留”方法是不必要的,您正在泄漏_product