我已经在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];
如果不在另一种方法中分配它,我不能以某种方式访问它吗?如果是的话,我该怎么办呢。
答案 0 :(得分:2)
将其更改为类方法:删除方法前面的“ - ”并将其更改为“+”
+(void) touchingFix:(b2Fixture *)touchedFix
{
bodyTouched=TRUE;
bodyFix=touchedFix;
}
您可以使用类名而不是指向类实例的指针来访问类方法:
[Player touchingFix:fixtureA];