Objective c 如何设置';这是一个自定义对象

Objective c 如何设置';这是一个自定义对象,objective-c,cocos2d-iphone,Objective C,Cocos2d Iphone,我试图跟踪用户在“矩形”对象顶部拖放的精灵。我认为最简单的方法是在“矩形”对象中添加一个相同类型的属性“MySprite”,然后将其值设置为与放在其上的“MySprite”相等。我认为在“Rectangle.h”文件中使用属性“MySprite*sprite”并在“Retangle.m”文件中合成它会自动创建“setSprite”方法。我不明白 CocosScene.m中下面的“target.sprite=selSprite;”代码行导致以下错误: 2013-05-14 20:32:51.953

我试图跟踪用户在“矩形”对象顶部拖放的精灵。我认为最简单的方法是在“矩形”对象中添加一个相同类型的属性“MySprite”,然后将其值设置为与放在其上的“MySprite”相等。我认为在“Rectangle.h”文件中使用属性“MySprite*sprite”并在“Retangle.m”文件中合成它会自动创建“setSprite”方法。我不明白

CocosScene.m中下面的“target.sprite=selSprite;”代码行导致以下错误:

2013-05-14 20:32:51.953 DragDrop[461:c07]*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[CCSprite SetPrite:::::::**未识别的选择器发送到实例0x8d5c280'

矩形.h 矩形.m 共新
假设错误来自行
target.sprite=selSprite
,则错误表明
target
实际上不是一个
Rectangle
对象,而是一个
CCSprite
对象。您需要验证您正在放入的对象是什么
wordcirclerlectangles
。您是对的。我想感谢你回答这个问题,但因为这是一个评论,我不能。非常感谢。
#import "CCNode.h"
#import "cocos2d.h"
#import "MySprite.h"

@interface Rectangle : CCNode
{
    MySprite *sprite;
}

@property(nonatomic,readwrite,copy) MySprite *sprite;

@end
@implementation Rectangle

@synthesize sprite = _sprite;

@end
for(Rectangle *target in wordCircleRectangles)
            {

                if(CGRectIntersectsRect(selSprite.boundingBox, target.boundingBox))
                {
                    target.sprite = selSprite;
                }
            }