有人可以帮我弄清楚在关闭运行 CCRepeatAction 的 Win32 cocos2dx 应用程序时如何安全地停止所有操作。我尝试在方法中添加sprite->stopAllActions();
,Destructor
和OnExit()
方法update(float delta);
,但是当我单击正在运行的 Win32 Cocos2dx 应用程序的“X”按钮时,应用程序仍然崩溃。
我没有保留 CCRepeatAction,我也尝试过让 Cocos2D-X 在清理时停止正在运行的操作,但看起来如果 CCAction 在应用程序关闭时正在运行,那么应用程序就会崩溃。所以我的假设是关闭 Win32 应用程序时必须停止该操作。
永远重复操作在我的空闲状态下运行。这是一个简单的淡入/淡出 CCAction。这是我的空闲状态动画的代码。我没有保留它,所以不确定如何停止动画并关闭应用程序而不使其崩溃。
if ( idleAnim == true )
{
this->getSprite()->stopAllActions();
CCSequence *actions = CCSequence::create(CCFadeIn::create(0.5f), CCFadeOut::create(0.5f),NULL);
CCRepeatForever *repeat = CCRepeatForever::create(actions);
this->getSprite()->runAction(repeat);
idleAnim = false;
}