设置AVAudioPlayer委托给多个类?
问题描述:
快速问题:是否可以将AVAudioPlayer实例的委托设置为多个类?设置AVAudioPlayer委托给多个类?
在我的程序中,我希望两个类在声音播放结束时得到通知,但我不确定如何做到这一点。
任何帮助,将不胜感激。
答
那么这是不可能的。但您可以通过注册并通知通知来完成。 Here是在目标c中注册和通知类的代码。
所以,你可以设置一个类中的代表,有
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
NSLog(@"delegate called");
[[NSNotificationCenter defaultCenter]
postNotificationName:AUDIO_PLAYER_FINISHED_PLAYING object:nil];
}
答
不,代表总是只有一个实例。 你可以创建一个新的类,它是委托并使其发送一个NSNotification来通知其他两个类关于该事件。
感谢你可以通知其他类,我会尝试了这一点 – Fitzy 2012-03-12 08:12:46