【发布时间】:2011-04-23 20:03:25
【问题描述】:
我知道- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event 方法,但想知道我如何不断地做某事,例如在手指向下时移动精灵?
【问题讨论】:
标签: iphone objective-c cocos2d-iphone
我知道- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event 方法,但想知道我如何不断地做某事,例如在手指向下时移动精灵?
【问题讨论】:
标签: iphone objective-c cocos2d-iphone
您可以像 Gajet 那样做,或者如果您的动作是恒定的,您可以安排您的动作。所以假设你有这个 move 方法:
-(void)moveSprite:(ccTime) dt {
// move your sprite here by small increments
}
然后在您提到的ccTouchBegan: 方法中,您安排移动方法[self schedule:@selector(moveSprite:)] 并在ccTouchEnded 中取消安排[self unschedule:@selector(moveSprite:)] 这将在您结束触摸时停止运动...希望这会有所帮助
【讨论】:
您只需在调用ccTouchBegan 时将布尔值设置为真,当调用ccTouchEnd 时设置为假,然后当调用ccTouchMove 事件时,您只需检查天气您的标志是否为真.
【讨论】:
实现适当的UIGestureRecognizer 子类。您将收到开始或更改或结束的事件 - 并且可能会采取相应的行动。
【讨论】: