S. *_*ite 1 avaudioplayer viewcontroller swift
我有一个在 AVAudioPlayer 中播放的主菜单声音文件。
我想创建一个选项按钮,将我带到另一个视图控制器。当我点击开关时,可以选择“关闭”主菜单声音。如何停止音频播放?
如何在不同的 ViewController 中访问音频播放器?
如果您需要更多信息,请告诉我。谢谢!
创建一个 Singleton 类,您可以在其中添加播放器并通过以下方式控制它:
import AVFoundation
class Singleton {
static let sharedInstance = Singleton()
private var player: AVAudioPlayer?
func play() {
guard let url = Bundle.main.url(forResource: "Sound", withExtension: "mp3") else { return }
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try AVAudioSession.sharedInstance().setActive(true)
player = try AVAudioPlayer(contentsOf: url, fileTypeHint: AVFileType.mp3.rawValue)
guard let player = player else { return }
player.play()
} catch let error {
print(error.localizedDescription)
}
}
func stop() {
player?.stop()
}
}
Run Code Online (Sandbox Code Playgroud)
每当您想启动声音时,只需调用:
Singleton.sharedInstance.play()
Run Code Online (Sandbox Code Playgroud)
每当您想停止声音时,只需调用:
Singleton.sharedInstance.stop()
Run Code Online (Sandbox Code Playgroud)
这可以从所有控制器调用。
| 归档时间: |
|
| 查看次数: |
845 次 |
| 最近记录: |