如何在觸摸時獲取精靈的子類來調用選擇器?Cocos2d:如何在觸摸時獲取精靈的子類來調用選擇器?
我想要一個雪碧響應觸摸並在觸摸結束時調用選擇器。我知道如何讓它響應觸摸,但我不知道如何指定我應該調用哪個選擇器。
任何幫助?
如何在觸摸時獲取精靈的子類來調用選擇器?Cocos2d:如何在觸摸時獲取精靈的子類來調用選擇器?
我想要一個雪碧響應觸摸並在觸摸結束時調用選擇器。我知道如何讓它響應觸摸,但我不知道如何指定我應該調用哪個選擇器。
任何幫助?
你的意思是你想要能夠在精靈上設置目標和選擇器嗎?
您可以通過設置一個方法來存儲目標和選擇器在實例變量中。
__weak id _target;
SEL _selector;
-(void)setTarget:(id)target andSelector:(SEL)selector
{
_target = target;
_selector = selector;
}
-(void)ccTouchesEnded...
{
[_target performSelector:_selector];
}
在圖層中,首先啓用觸摸並添加ccTouchesBegan來跟蹤觸摸。
self.isTouchEnabled = YES;
您可以使用此功能找到觸摸。
- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *myTouch = [touches anyObject];
CGPoint touchLocation = [myTouch locationInView:[myTouch view]];
touchLocation = [[CCDirector sharedDirector] convertToGL:location];
if(CGRectContainsPoint([sprite boundingBox], touchLocation))
{
[sprite youTouched];
}
}
謝謝,這是不是我所要求的不過是一個不錯的替代 – mm24
是的,非常感謝你,這是我爲後。對不起,以前不能正確表達這一點。 – mm24