Мне интересно, как я могу получить доступ к self
из метода класса.
В этом методе экземпляра у меня нет проблем с доступом к себе:
- (void) ccTouchesEnded:(NSSet *) touches withEvent:(UIEvent *) event{
UITouch *theTouch = [touches anyObject];
if (theTouch.tapCount == 2) {
// self is available here to change background but I need to call it from
// a class method since it's being invoked elsewhere.
[TouchTrailLayer testCall];
}
}
+ (void) testCall {
[TouchTrailLayer changeBackground];
}
Как мне сослатьсясамостоятельно в методе класса ниже, как если бы это был метод экземпляра?Или, как вы вызываете метод экземпляра, используя метод класса (выберите лучший)?
+ (void) changeBackground {
// this is where self doesn't work
[self removeChildByTag:100 cleanup:YES];
CGSize size = [[CCDirector sharedDirector] winSize];
CCSprite *bg = [CCSprite spriteWithFile:@"Default-hd.png"];
bg.position = ccp( size.width /2 , size.height/2 );
bg.tag = 100;
[self addChild:bg z:0];
}