geb*_*bel 6 objective-c cocos2d-iphone simpleaudioengine
我想检测[SimpleAudioEngine sharedEngine]当前是否正在播放任何效果.对于背景音乐,有一种方法可以为您提供背景音乐是否正在播放的信息:
[[SimpleAudioEngine sharedEngine] isBackgroundMusicPlaying];
Run Code Online (Sandbox Code Playgroud)
音效有类似之处吗?如果不是,我怎么能检测到我是否已经在效果?
SimpleAudioEngine没有像isBackgroundMusicPlaying效果这样的方法,但您可以存储一个BOOL名为 isPlaying 并使用CDSoundSource
CDSoundSource* currentSound = [[CDAudioManager sharedManager] audioSourceForChannel:kASC_Right];
[currentSound load:audioFile];
currentSound.delegate = self;
currentSound.backgroundMusic = NO;
isPlaying = YES;
[currentSound play];
Run Code Online (Sandbox Code Playgroud)
然后实现回调:
- (void) cdAudioSourceDidFinishPlaying:(CDLongAudioSource *) audioSource {
isPlaying = NO;
}
Run Code Online (Sandbox Code Playgroud)
我不知道这是否是初始化的正确方法,因为我无耻地从这个主题CDSoundSource中窃取了代码。也许你应该看看CDAudioManager 类参考
希望这有助于为您指明正确的方向。
| 归档时间: |
|
| 查看次数: |
2590 次 |
| 最近记录: |