我的数组中有几个对象。这些对象来自 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:]: unrecognized selector sent to instance ... **
对象具有多个元素,例如文本框、标签以及具有阴影、发光等的图像,并且新对象必须具有相同的文本颜色、阴影、发光、大小、图像等值。 ,如原样。
我认为 UIImageView
具有 NSCopying
协议(protocol)。如果这是问题,我该如何实现?
请不要向我发送文档,我已阅读它们,这就是我在这里询问的原因。请给我一些实际的例子。
谢谢。
最佳答案
您在哪里读到 UIImageView
实现 NSCopying
?事实并非如此,您必须自己为您的子类执行此操作。
关于objective-c - 复制 UIImageView 子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012167/