很抱歉,如果这是一个愚蠢的问题,但在设置AVAudioPlayer实例的委托属性时遇到了问题。
在我的程序中,我创建了4个AVAudioPlayer实例。这些都在一个名为ShapeView的类中,派生自NSObject。我不确定我应该将委托设置为什么,当我将其设置为'self'时,它会给我警告:“将'ShapeView * const_strong发送到不兼容类型'id'的参数”
我是一个相对缺乏经验的程序员,玩弄声音,所以任何帮助都会受到重视。
谢谢!
答案 0 :(得分:1)
解决此问题的两种方法:
1:符合.h中的协议,如此:
@interface MyExampleClass : NSObject <AVAudioPlayerDelegate>
...
然后为每个玩家设置委托。
2:如果编译器仍然抱怨,由于某种原因将自我类转换为id会使其消失。所以:
[self.audioplayer setDelegate:(id)self];