iphone - Cocos2d-iPhone中继承CCSprite

标签 iphone objective-c inheritance cocos2d-iphone

我已经准备好很多地方告诉我我不应该继承 CCSprite 类,而只是将 Sprite 作为成员变量添加到我的类中。

这是我所做的: 创建了一个CCNode类, 向我的节点类添加了一个 CCSprite 变量, 初始化我的 Sprite 并将其作为子节点添加到我的节点中。

我现在有一个 CCLayer,我想在其中绘制这些 Sprite ,但是当我将节点添加为子节点时,什么也没有绘制。如果我将节点 Sprite 添加为子节点而不是它将绘制的节点。

我的问题是,是否有办法通过将节点作为子节点添加到图层中来绘制我的 Sprite ,或者添加 Sprite 是唯一的方法吗?

我是 Objective-c 和 iPhone 开发新手,因此我们将不胜感激任何帮助。

编辑 这是我的 CCNode 类 - AnimalSprite 是我的 CCSprite。

    @implementation Animal

    @synthesize animalSprite = _animalSprite;

    -(Animal *) initWithFile:(NSString *)texture position:(CGPoint) position
    {
        self.animalSprite = [CCSprite spriteWithFile:texture];
        self.animalSprite.position = position;
        self.animalSprite.scale = 0.25f;
        [self addChild:self.animalSprite];

        return self;
    }

    -(void) dealloc{

        [super dealloc];
    }

@end

现在,在我的 CCLayer 类中,我有一个级别变量,其中包含我的节点列表。

//Load Level
Level *level = [LoadLevel loadLevel];

for (Animal *animal in level.animals)
{
    [self addChild:animal];
}

编辑我创建节点对象,然后按以下方式将它们添加到级别类中的数组中。

Animal *animal = [[[Animal alloc] initWithFile:animalFileName position:position] autorelease];
[level.animals addObject:animal];

最佳答案

尝试阅读此帖子 http://www.cocos2d-iphone.org/forum/topic/11566

希望您遇到同样的问题,即在使用 Sprite 之前先将其释放。

干杯,

塔兹

最新游戏已链接:http://www.silverbacktechsol.co.uk/stschained.html

关于iphone - Cocos2d-iPhone中继承CCSprite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5389566/

相关文章:

ios - 从抽屉 Controller 退出左 View Controller

iphone - JSON 数据中的 UITableView 部分

ios - 如何在谷歌地图iOS Sdk中拖动圆形 View

python-3.x - 在父类(super class)中缓存属性

iphone - 使用 iOS 4.0 SDK 和设备开发 iOS 3.1 应用程序?

ios - reactcocoa是true应该ChangeCharactersInRange文本字段等效

objective-c - 基于项目的 NSDocument 工作流

python - Python 中的 NSStatusItem

c++ - C++ 中的模板和继承

c++ - 派生赋值运算符从基数调用