2011-05-16 57 views
0

我在數組中有幾個對象。這些對象來自UIImageView子類。複製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:]:無法識別的選擇發送到實例... **

對象具有多個元素,如文本框,標籤和具有陰影,發光等的圖像,並且新對象必須具有相同的文本顏色,陰影,發光,大小,圖像等值,作爲原件。

我以爲UIImageViewNSCopying協議。如果這是問題,我該如何實現?

請不要將我發送給文檔,我已經閱讀了他們,這就是我在這裏問的原因。請給我實際的例子。

謝謝。

回答

1

你從哪裏讀到UIImageView implements NSCopying?它不是,你必須爲你的子類自己做這件事。

+2

我不能拒絕:[UIImageView類參考](http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIImageView_Class/Reference/Reference.html)。 – 2011-05-16 00:25:37