-1

我正在使用 NSMutableArray 来存储一个名为 poligonon 的对象。这个对象有一个 NSMutableArray 作为属性来存储坐标 X。但是当我添加第二个对象时,数组上的第一个对象会变换自身。数组上的所有对象都必须不同,但它们等于数组中的最后一个对象。

示例:

coordArrayX是一个属性(NSMutableArray)

-saveDataIntoArray

{
poligonon.coorArrayX = coordArrayX;
arrayPoligonon addObject: poligonon;
}

用户第一次单击保存时,第一个坐标是 74。现在,他创建一个坐标为 45 的新 poligonon,并将其添加到数组中。

当用户检查时,第一个 poligonon 的坐标 = 45。

怎么解决?

4

1 回答 1

0

每次您将相同的内容添加poligonon到数组并覆盖coorArrayX.

代替,

{
  poligonon.coorArrayX = coordArrayX;
  arrayPoligonon addObject: poligonon;
}

尝试这个,

{
  poligonon = [[Poligonon alloc] init];
  poligonon.coorArrayX = coordArrayX;
  [arrayPoligonon addObject:poligonon];
}
于 2012-12-24T03:10:11.557 回答