设置AVAudioPlayer实例的委托

时间:2012-03-12 05:04:13

标签: objective-c audio delegates warnings avaudioplayer

很抱歉,如果这是一个愚蠢的问题,但在设置AVAudioPlayer实例的委托属性时遇到了问题。

在我的程序中,我创建了4个AVAudioPlayer实例。这些都在一个名为ShapeView的类中,派生自NSObject。我不确定我应该将委托设置为什么,当我将其设置为'self'时,它会给我警告:“将'ShapeView * const_strong发送到不兼容类型'id'的参数”

我是一个相对缺乏经验的程序员,玩弄声音,所以任何帮助都会受到重视。

谢谢!

1 个答案:

答案 0 :(得分:1)

解决此问题的两种方法:

1:符合.h中的协议,如此:

@interface MyExampleClass : NSObject <AVAudioPlayerDelegate> ...

然后为每个玩家设置委托。

2:如果编译器仍然抱怨,由于某种原因将自我类转换为id会使其消失。所以:

[self.audioplayer setDelegate:(id)self];