如何暂停/恢复使用repeatActionForever启动的播放声音

时间:2014-04-01 19:24:32

标签: ios audio sprite-kit

我已经开始以下列方式播放声音循环:

SKAction *soundAction = [SKAction playSoundFileNamed:@"walking.wav" waitForCompletion:YES];
[self runAction:[SKAction repeatActionForever:soundAction] withKey:@"walking"];

如何立即暂停/恢复?

1 个答案:

答案 0 :(得分:0)

对于想要更多控制的背景音乐或声音等内容,Apple文档建议使用AVFoundation而不是基于SKAction的声音。

如果您不想这样做,那么有一些变通办法。您可以删除特定操作

[self removeActionForKey:@"walking"];

但是你必须重新实例化初始动作,或者你可以让它成为iVar,重新启动它。

其他SpriteKit解决方法是为其提供自己的非可视节点,并使节点为iVar或属性。然后在此节点上而不是在self上运行声音效果动作,并暂停它,您可以暂停节点。

node.paused = YES;