快速提问:是否可以将AVAudioPlayer实例的委托设置为多个类?
在我的程序中,我希望在声音播放完毕后通知两个课程,但我不确定如何操作。
任何帮助将不胜感激。
答案 0 :(得分:1)
嗯,这是不可能的。但你可以通过注册和通知通知来做到这一点。 Here是用于在目标c中注册和通知类的代码。
因此,您可以将一个类设置为委托,并在那里通知其他类
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
NSLog(@"delegate called");
[[NSNotificationCenter defaultCenter]
postNotificationName:AUDIO_PLAYER_FINISHED_PLAYING object:nil];
}
答案 1 :(得分:0)
不,委托总是只有一个实例。 您可以创建一个新的类作为委托,并使其发送NSNotification以通知其他两个类有关该事件。