gpt4 book ai didi

sprite-kit - Spritekit停止声音

转载 作者:行者123 更新时间:2023-12-02 22:10:52 24 4
gpt4 key购买 nike

我目前正在使用 Apple 的 SpriteKit 库开发游戏,但在开始播放后我无法停止声音。我已经尝试使用文档中列出的方法来阻止 Skaction 运行,但似乎没有什么可以阻止声音播放。这些是我试图阻止声音的尝试。

//Playing sound action:

SKAction *music = [SKAction playSoundFileNamed:@"menu.wav" waitForCompletion:YES];
[musicNode runAction:[SKAction repeatActionForever:[SKAction sequence:@[
music,
[SKAction waitForDuration:0],
]]] withKey:@"MUSIC_PLAYING"];

//Later when i want to stop the sound:

[musicNode removeActionForKey:@"MUSIC_PLAYING"]; //Removing the action from the node
[musicNode runAction:[SKAction waitForDuration:0] withKey:@"MUSIC_PLAYING"]; //"Overriding" with another action with the same key
[musicNode removeAllActions]; //Removing all actions from the node
[musicNode removeFromParent]; //Removing the node from the parent

musicNode 只是一个运行 Action 的 SkpriteNode,尽管我直接从场景中尝试了相同的方法,即:场景播放声音,然后尝试将其删除。或者,由于 waitForCompletion 设置为 YES,该操作可能不会停止,但是我再次尝试使用 NO 和相同的结果。有没有办法使用 AVaudioSession 的 sharedInstante 来停止声音?我也尝试了以下方法但也失败了:
 [[AVAudioSession sharedInstance]setActive:FALSE error:nil];

谢谢你的帮助!

最佳答案

我在使用 SK 音频时也遇到过类似的问题……因此我已经退而使用 AVFoundation。我不久前发现了这个;它完成了我需要它做的一切,听起来它也可以解决您的问题!

https://github.com/nicklockwood/SoundManager

关于sprite-kit - Spritekit停止声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22431049/

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