Cocos2d iphone 触摸cocos2d后添加雪碧
我的目标是在用户触摸屏幕后向屏幕添加一个精灵leftOn 这是我的密码:Cocos2d iphone 触摸cocos2d后添加雪碧,cocos2d-iphone,touch,sprite,addchild,Cocos2d Iphone,Touch,Sprite,Addchild,我的目标是在用户触摸屏幕后向屏幕添加一个精灵leftOn 这是我的密码: -(void)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event{ CGPoint location = [touch locationInView:[touch view]]; location = [[CCDirector sharedDirector]convertToGL:location]; if (CGRectContains
-(void)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event{
CGPoint location = [touch locationInView:[touch view]];
location = [[CCDirector sharedDirector]convertToGL:location];
if (CGRectContainsPoint([leftOff boundingBox],location)) {
CCLOG(@"Left Pressed");
[self addChild:leftOn];
}
}
日志始终输出“左按”,但在不添加精灵的情况下停止运行。
如果我在init方法中添加精灵,它会显示出来。此外,我尝试更改精灵的顺序,例如[self addChild:leftOn z:2],但它仍然不显示。在“停止运行”下是什么意思?你的应用程序崩溃了?确保leftOn不是如Ben Trengrove所说的那样为nil,并且该精灵没有添加到另一个父级。这两种情况都可能导致碰撞。如果您的应用程序崩溃,从控制台查看错误可能会很有用。这有助于理解哪里有问题。我刚开始使用cocos2d,但我看到的演示在ccTouchesEnded中添加精灵,而在已经存在和正在被触摸的内容上使用ccToucheSbegind进行操作。是否存在leftOn?显示您从其他父级调用它的位置。谢谢