【问题标题】:Making audio player work in swift (xcode 7.1.1)?让音频播放器快速工作(xcode 7.1.1)?
【发布时间】:2015-11-26 13:43:30
【问题描述】:

我正在尝试使用 swift 组合在一起的音频播放器出现问题,该播放器专为在游戏应用程序中使用而构建。下面的代码是我所拥有的。我的主声音文件夹中的单独子组中已经有所有 mp3 文件,但我不明白为什么无法识别 NSURL。

导入 UIKit 导入 SpriteKit 导入 AVFoundation

类 GameViewController: UIViewController {

var backgroundMusicPlayer:AVAudioPlayer = AVAudioPlayer()

override func viewDidLoad() {
    super.viewDidLoad()

        }
override func viewWillLayoutSubviews() {

    var BGMusicURL:NSURL = NSBundle.mainBundle().URLForResource("BGMusicURL", withExtension: "mp3")
    backgroundMusicPlayer = AVAudioPlayer(contentsOfURL: bgMusicURL, error: nil)
    backgroundMusicPlayer.numberOfLoops = -1
    backgroundMusicPlayer.prepareToPlay()
    backgroundMusicPlayer.play()
}

如果有人可以帮助我更新我的代码,那就太好了,(我是 swift 的初学者,我相信你会说出来)

谢谢

【问题讨论】:

    标签: ios audio swift2


    【解决方案1】:

    旧答案: 尝试使用 AVPlayer 而不是 AVAudioPlayer

    编辑/新答案

    尝试添加!在 var URLForResource 的末尾,这就是你强制展开的方式,所以它可能会起作用

    像这样

    var BGMusicURL:NSURL = NSBundle.mainBundle().URLForResource("BGMusicURL", withExtension: "mp3")!
    

    【讨论】:

    • 感谢 Petar 的回复!我刚刚尝试过,它似乎没有任何东西。它说 URLForResource 没有解包,并且它不能为 AVPlayer 调用初始化程序。我相信我最终会弄明白的
    • 不幸的是没有:(我真的不知道该怎么办!
    • @SamuelJones 您尝试过编辑/新答案解决方案吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多