gpt4 book ai didi

ios - 升级到 XCode7.2 SKAudioNode 后只播放 1 秒 - 可能是 SKScene 的问题?

转载 作者:可可西里 更新时间:2023-11-01 01:02:27 24 4
gpt4 key购买 nike

我在升级到 XCode 7.2 后遇到一个问题,即 SKAudioNode 只播放了一秒钟然后停止播放。我没有改变代码。

在我的 GameViewController 中,我这样调用 MenuScene:

class GameViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()

let scene = MenuScene(size: view.bounds.size)
let skView = view as! SKView

skView.showsFPS = true
skView.showsNodeCount = true
skView.ignoresSiblingOrder = true

scene.scaleMode = .ResizeFill
skView.presentScene(scene)

}...

在我的 MenuScene 中,我这样称呼我的 GameScene:

func launchScene() {
let gameView = view! as SKView
let gameScene = GameScene(size: self.size)

gameView.ignoresSiblingOrder = true

let reveal = SKTransition.fadeWithDuration(0.5)

gameView.presentScene(gameScene, transition:reveal)
}

然后在我的 GameScene 中添加一个 SKAudioNode:

class GameScene: SKScene, SKPhysicsContactDelegate {
override func didMoveToView(view: SKView) {
...
let backgroundMusic = SKAudioNode(fileNamed: "main.mp3")
backgroundMusic.autoplayLooped = true
addChild(backgroundMusic)
...
}
}

所以,问题是当我点击一个调用 launchScene() 函数的按钮时,背景音乐开始播放但在大约 1 秒后停止播放。

编辑:好像之前就开始播放背景音乐了!到另一个场景的过渡开始,当另一个场景(gameScene)“终于出现”(不知道如何描述)时,音乐停止播放。我不知道为什么,因为我在“didMoveToView”函数的 gameScene 中添加了 backgroundMusic。

我在这里做错了什么,因为它在 XCode 7.1 中完美运行?

最佳答案

在我的场景转换项目中,即使添加 0.1 秒的延迟似乎也能解决问题。比如

    runAction(SKAction.waitForDuration(0.1), completion: {
self.backgroundMusic = SKAudioNode(fileNamed: "main.mp3")
self.backgroundMusic.autoplayLooped = true
self.addChild(self.backgroundMusic)
})

关于ios - 升级到 XCode7.2 SKAudioNode 后只播放 1 秒 - 可能是 SKScene 的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34250100/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com