我的应用程序中有一个CCScrollLayer,其中包含可移动的精灵(可以拖放它们)。问题是当将精灵拖得太远时,CCScrollLayer开始滚动。我试图禁用CCScrollLayer滚动,只要我拖动这些精灵。禁用通过使用
工作[[CCTouchDispatcher sharedDispatcher] removeDelegate:sender];
我从方法
获得发件人- (void)scrollLayerScrollingStarted:(CCScrollLayer *)sender {
//...
}
我无法再次启用CSScrollLayer,尝试使用此但没有结果:
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:scrollLayer priority:0 swallowsTouches:NO];
我使用的是v1.0.1(稳定版)
答案 0 :(得分:1)
您可以继承CCScrollLayer并添加一个启用的属性boolean。只需覆盖CCScrollLayer用于开始滑动的触摸方法。例如
-(BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event
{
if(self.enabled)
return [super ccTouchBegan:touch withEvent:event];
else
return NO;
}