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

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

[html] view plaincopy

  1. bool HelloWorld::init()
  2. {
  3. return true;
  4. }
  5. void HelloWorld::onEnter()
  6. {
  7. Layer::onEnter();
  8. log("HelloWorldonEnter");
  9. }
  10. voidHelloWorld::onEnterTransitionDidFinish()
  11. {
  12. Layer::onEnterTransitionDidFinish();
  13. log("HelloWorldonEnterTransitionDidFinish");
  14. }
  15. void HelloWorld::onExit()
  16. {
  17. Layer::onExit();
  18. log("HelloWorldonExit");
  19. //停止播放代码                                                                                                                          ①
  20. }
  21. voidHelloWorld::onExitTransitionDidStart()
  22. {
  23. Layer::onExitTransitionDidStart();
  24. log("HelloWorldonExitTransitionDidStart");
  25. //停止播放代码                                                                                                                          ②
  26. }
  27. void HelloWorld::cleanup()
  28. {
  29. Layer::cleanup();
  30. log("HelloWorldcleanup");
  31. //停止播放代码                                                                                                                          ③
  32. }

关于停止背景音乐播放,理论上我们是可以将停止播放代码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中停止播放背景音乐

时间: 2024-11-05 20:24:53

Cocos2d-x中停止播放背景音乐的相关文章

Android通过startService播放背景音乐简单示例

关于startService的基本使用概述及其生命周期可参见博客<Android中startService的使用及Service生命周期>. 本文通过播放背景音乐的简单示例,演示startService的基本使用流程. 系统界面如下: 界面上面就两个按钮,"播放音乐并退出Activity" 和 "停止播放音乐".我们在该示例中,通过操纵Activity的按钮控制MusicService播放或停止播放音乐. 我将一个名为music.mp3的放到资源目录/r

Cocos2d-x中播放背景音乐

背景音乐的播放与停止实例代码例如以下: SimpleAudioEngine::getInstance()->playBackgroundMusic("sound/Jazz.mp3", true); SimpleAudioEngine::getInstance()->stopBackgroundMusic("sound/Jazz.mp3"); 背景音乐的播放代码放置到什么地方比較适合呢?比如:在Setting场景中.主要代码例如以下: bool Setti

php页面添加背景音乐 控制停止/播放

php页面添加背景音乐 控制停止/播放 <!DOCTYPE html> <html> <head lang="zh-cn"> <meta charset="UTF-8"> <title></title> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-sca

【Cocos2dx】资源文件夹,播放背景音乐,导入外部库

在Cocos2dx中播放背景音乐是一件很容易的事情,就一行代码,但是首先要导入Cocos2dx的音频引擎cocosDenshion.cocosDenshion对cocos2d工程提供了很方便的声音素材的调用和管理.同时要把要播放的音乐放到工程的资源文件夹才能正确播放 与<[Cocos2dx]Windows平台下Cocos2dx 2.x的下载.安装.配置,打造自己的Helloworld>(点击打开链接)同样通过如下的Python命令,创建一个BGM工程之后: python create_proj

创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放。一个滑动条用来控制视频播放位置,以10为步长跳进。另一个滑动条用来控制停止/播放

/* 创建一个程序读入和显示视频文件,并可以使用滑动条控制视频文件的播放. 一个滑动条用来控制视频播放位置,以10为步长跳进.另一个滑动条用来控制 停止/播放 */ #include <cv.h> #include <highgui.h> int g_slider_position = 0; CvCapture* g_capture = NULL; int index = 0; bool flag = true; int g_slider_position1 = 0; void o

swiper中有视频时,滑动停止后视频停止播放

我们经常能够看到在图片轮播中,穿插着视频的播放,如下图为淘宝的一个产品轮播图,放个视频能够让顾客对产品有个更全面的认识. 我们可以用swiper实现这个功能.用法就跟放图片一样,只是这里把图片换成视频就可以了. 只是如果放的是视频的话,就有一个问题,就是我们怎么在滑动结束的时候,自动停止播放上一个视频呢? 我们可以利用 swiper 提供的 onSlideChangeEnd 方法来做到这种效果,具体代码如下: $(".swiper-container").each(function (

HTML5视频播放练习:鼠标经过视频播放,鼠标移除停止播放,再次经过继续播放。

随着HTML5的广泛应用,在一些网站中,经常看到有些预览的短视频预览,鼠标经过就会播放,移除就会停止播放,再次移进去就会继续播放. 自己也研究着做一个比较简单的类似的练习. 视频可以自己到包图网下载,包图网的媒体首页视频预览就是鼠标移进去就播放,离开就停止,再移进去就播放. 不过,他们在视频上,还增加了一直视频的图片,思路是,鼠标经过,图片隐藏,视频播放,鼠标离开,图片显示,视频停止. 其理论都是相同的. 附上练习代码 1 <!DOCTYPE html> 2 <html> 3 &l

audio在浏览器中自动播放

audio 在浏览器中自动播放 //使用autoplay属性 var src = "./award.wav"; var body = document.getElementsByTagName("body")[0]; if (body.getElementsByTagName("audio").length <= 0) { var audio = document.createElement("audio"); audi

在iOS微信浏览器中自动播放HTML5 audio(音乐)的2种正确方式

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"