首页 > 其他 > 详细

Cocos2d-x中停止播放背景音乐

时间:2014-08-04 14:26:47      阅读:338      评论:0      收藏:0      [点我收藏+]

停止背景音乐播放代码放置到什么地方比较适合呢?例如:在HelloWorld场景中,主要代码如下:

bool HelloWorld::init()
{
   return true;
}
 
void HelloWorld::onEnter()
{
    Layer::onEnter();
    log("HelloWorldonEnter");
}
 
voidHelloWorld::onEnterTransitionDidFinish()
{
    Layer::onEnterTransitionDidFinish();
    log("HelloWorldonEnterTransitionDidFinish");        
}
 
void HelloWorld::onExit()
{
    Layer::onExit();
    log("HelloWorldonExit");
    //停止播放代码                                                                                                                          ①
}
 
voidHelloWorld::onExitTransitionDidStart()
{
    Layer::onExitTransitionDidStart();
    log("HelloWorldonExitTransitionDidStart");     
    //停止播放代码                                                                                                                          ②
}
 
void HelloWorld::cleanup()
{
    Layer::cleanup();                                                                                                                              
    log("HelloWorldcleanup");
    //停止播放代码                                                                                                                          ③
}

关于停止背景音乐播放,理论上我们是可以将停止播放代码SimpleAudioEngine::getInstance()->stopBackgroundMusic("sound/Jazz.mp3")放置到三个位置(代码中的①、②、③)。下面我们分别分析一下它们还有什么不同。

 

1、代码放到第①和②行

代码放到第①和②行(即在HelloWorld::init函数),如果后面场景中调用背景音乐播放,则可以导致播放背景音乐异常。关于这个问题我们在前一节以及介绍过了。

 

2、代码放到第③行

代码放到第③行(即在HelloWorld::cleanup函数),这个函数是在层对象清除时候调用,在此处停止背景音乐播放是比较好的选择。



更多内容请关注Cocos2d-x系列图书《Cocos2d-x实战(卷Ⅰ):C++开发》
本书交流讨论网站:http://www.cocoagame.net
欢迎加入cocos2d-x技术讨论群:257760386、327403678

Cocos2d-x中停止播放背景音乐,布布扣,bubuko.com

Cocos2d-x中停止播放背景音乐

原文:http://blog.csdn.net/tonny_guan/article/details/38367779

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!