我在一个数组中有几个对象。这些对象来自一个UIImageView
子类。
这些对象的类有几个@synthesize
d 属性。
在某些时候,我必须在数组的给定位置以不同的坐标创建对象的副本。然后我做:
id objectToDuplicate = [myArray objectAtIndex:x];
id newObject = [objectToDuplicate copy];
CGPoint newCenter = [objectToDuplicate center];
newCenter.x = newCenter.x + 10;
newCenter.y = newCenter.y + 10;
[newObject setCenter:newCenter];
[self.view addSubview:newObject];
[newObject release];
当这段代码运行时,什么也没有发生。我的意思是,没有创建具有 10 像素偏移的对象,我在控制台中看到此消息:
** ... copyWithZone:]: 无法识别的选择器发送到实例 ... **
对象具有多个元素,例如文本框、标签和具有阴影、发光等的图像,并且新对象必须具有与文本颜色、阴影、发光、大小、图像等相同的值,因为原来的。
我认为协议UIImageView
已经NSCopying
到位。如果这是问题所在,我该如何实施?
请不要将我发送给文档,我已阅读它们,这就是我在这里问的原因。请给我一些实际的例子。
谢谢。