我正在使用Swift中的应用程序,该应用程序具有背景音乐播放功能。音乐在AppDelegate功能中启动:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
但我有一个名为SettingsViewController的视图控制器,这是一个我希望能够停止背景音乐的开关。
如何让开关按钮停止播放音乐?
答案 0 :(得分:0)
创建一个像SoundHelper.swift
这样的单身来处理所有声音。在此单例类中创建函数startPlayingBGM()
和stopPlayingBGM()
。
当应用启动时,请调用函数SoundHelper.sharedInstance.startPlayingBGM()
。
在切换功能中,只需将该功能调用为SoundHelper.sharedInstance.stopPlayingBGM()
如果你不熟悉swift单身,谷歌,学习一点,这将是非常有用的。你甚至可以在swift中找到一些Github声音助手的例子,看看那些代码。
如果您不想要单例,您仍然可以创建一个包含所有静态变量的全局结构Sound.swift
。
struct Sound {
static var isVolumeOn = true
...
static func playSound() {
//....
}
static func stopSound() {
//....
}
}
然后,您可以从外部访问所有静态函数和变量。例如,当应用启动时,请拨打Sound.playSound()
,然后在切换功能中拨打Sound.stopSound()
。