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


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

     

    [html] view plaincopy在CODE上查看代码片派生到我的代码片
     
    1. bool HelloWorld::init()  
    2. {  
    3.    return true;  
    4. }  
    5.    
    6. void HelloWorld::onEnter()  
    7. {  
    8.     Layer::onEnter();  
    9.     log("HelloWorldonEnter");  
    10. }  
    11.    
    12. voidHelloWorld::onEnterTransitionDidFinish()  
    13. {  
    14.     Layer::onEnterTransitionDidFinish();  
    15.     log("HelloWorldonEnterTransitionDidFinish");          
    16. }  
    17.    
    18. void HelloWorld::onExit()  
    19. {  
    20.     Layer::onExit();  
    21.     log("HelloWorldonExit");  
    22.     //停止播放代码                                                                                                                          ①  
    23. }  
    24.    
    25. voidHelloWorld::onExitTransitionDidStart()  
    26. {  
    27.     Layer::onExitTransitionDidStart();  
    28.     log("HelloWorldonExitTransitionDidStart");       
    29.     //停止播放代码                                                                                                                          ②  
    30. }  
    31.    
    32. void HelloWorld::cleanup()  
    33. {  
    34.     Layer::cleanup();                                                                                                                                
    35.     log("HelloWorldcleanup");  
    36.     //停止播放代码                                                                                                                          ③  
    37. }  

    关于停止背景音乐播放,理论上我们是可以将停止播放代码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
  • 相关阅读:
    php输入输出
    CSS选择器(三)
    CSS选择器(二)
    CSS选择器(一)
    3.31课·········插入百度地图、视频、音频
    3.30课·········Marquee标签
    3.29课·········表单验证和事件
    3.27课·········悬浮动态分层导航与隐藏导航
    3.26课·········window.document对象
    3.25课·········JavaScript的DOM操作
  • 原文地址:https://www.cnblogs.com/iOS-Blog/p/3889915.html
Copyright © 2020-2023  润新知