如何使用swift中的开关按钮停止背景音乐?

时间:2016-06-26 03:10:41

标签: xcode swift

我正在使用Swift中的应用程序,该应用程序具有背景音乐播放功能。音乐在AppDelegate功能中启动:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool

但我有一个名为SettingsViewController的视图控制器,这是一个我希望能够停止背景音乐的开关。

如何让开关按钮停止播放音乐?

1 个答案:

答案 0 :(得分:0)

  1. 创建一个像SoundHelper.swift这样的单身来处理所有声音。在此单例类中创建函数startPlayingBGM()stopPlayingBGM()

  2. 当应用启动时,请调用函数SoundHelper.sharedInstance.startPlayingBGM()

  3. 在切换功能中,只需将该功能调用为SoundHelper.sharedInstance.stopPlayingBGM()

  4. 即可

    如果你不熟悉swift单身,谷歌,学习一点,这将是非常有用的。你甚至可以在swift中找到一些Github声音助手的例子,看看那些代码。

    如果您不想要单例,您仍然可以创建一个包含所有静态变量的全局结构Sound.swift

    struct Sound {
      static var isVolumeOn = true
      ...
      static func playSound() {
        //....
      }
      static func stopSound() {
        //....
      }
    }
    

    然后,您可以从外部访问所有静态函数和变量。例如,当应用启动时,请拨打Sound.playSound(),然后在切换功能中拨打Sound.stopSound()