访问另一个没有alloc的类中的方法

时间:2012-11-18 15:09:02

标签: objective-c cocos2d-iphone

我已经在HelloWorldLayer类中初始化了一个方法播放器方法(继承自NSObject)。我想以这样一种方式声明同一类的其他方法,我不需要分配它们。例如:

Player.mm

-(id)spritePlayer:(CCLayer *)parentLayer 
                     inWorld:(b2World *)world
{
    creation of sprite body and other stuff
}

我想在Contact Listener类中使用此方法,但我已将其声明为播放器类:

-(void) touchingFix:(b2Fixture *)touchedFix
{
    bodyTouched=TRUE;
    bodyFix=touchedFix;
}

在Contact Listener类中,我只能通过以下方式访问它:

[[Player alloc] touchingFix:fixtureA];

如果不在另一种方法中分配它,我不能以某种方式访问​​它吗?如果是的话,我该怎么办呢。

1 个答案:

答案 0 :(得分:2)

将其更改为类方法:删除方法前面的“ - ”并将其更改为“+”

+(void) touchingFix:(b2Fixture *)touchedFix
{
    bodyTouched=TRUE;
    bodyFix=touchedFix;
}

您可以使用类名而不是指向类实例的指针来访问类方法:

[Player touchingFix:fixtureA];