【问题标题】:"SimpleAudioEngine has not been declared" error when trying to enable music pausing in Cocos2D-X尝试在 Cocos2D-X 中启用音乐暂停时出现“SimpleAudioEngine has not been declared”错误
【发布时间】:2012-10-04 05:38:00
【问题描述】:
所以使用 Cocos2D-X,在 AppDelegate.cpp 文件中,我取消注释该行:
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
这样我的音频将在应用退出时暂停。但是,当我这样做时,我得到了标题中所述的错误。我该如何解决这个问题?
【问题讨论】:
标签:
audio
cocos2d-x
appdelegate
simpleaudioengine
【解决方案1】:
在我看来,您忘记添加 SimpleAudioEngine 的声明。将此行添加到 AppDelegate.cpp:
#include "SimpleAudioEngine.h"
using namespace CocosDenshion;
【解决方案2】:
Dmitry Fomin 的答案是正确的,或者在你放之后
#include "SimpleAudioEngine.h"
你可以使用
CocosDenshion::SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
【解决方案3】:
SimpleAudioEngine.h 头文件包含SimpleAudioEngine 类所以添加
#include "SimpleAudioEngine.h"
在您的文件中。 SimpleAudioEngine 在 CocosDenshion 命名空间中,所以你可以使用
using namespace CocosDenshion;
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
或通过
CocosDenshion::SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();