objective-c - 复制 UIImageView 子类

标签 objective-c cocoa-touch ios uiimageview nscopying

我的数组中有几个对象。这些对象来自 UIImageView 子类。

这些对象的类具有多个 @synthesized 属性。

在某些时候,我必须在数组上给定位置的不同坐标处创建对象的副本。然后我这样做:

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/

相关文章:

ios - 带有 adjustsFontSizeToFitWidth 的多行 UILabel

ios - 如何修复 UIDatePicker 中的最大年份而不是日期和月份?

iphone - 从另一个选项卡重新加载 UITableView

iphone - 复制 NSMutableArray 时出现问题

ios - 以编程方式创建 subview ,然后添加 TapGesture For Action

ios - 错误 : Unrecognised selector, 警告:在两者中实现的类

ios - fillMode 为 kCAFillModeBackwards 有什么影响?

ios - 创建 TableviewController 并呈现它

ios - 如何在 iOS 上通过 Xcode 调试 Lightning Accessory

iphone - iPhone 词典应用程序上的模型- View - Controller 实践