4

我正在尝试使用此将 AVAudioPlayer 分配给属性

NSURL *soundURL = [[NSBundle mainBundle] URLForResource:@"error"
                                          withExtension:@"aiff"];
AVAudioPlayer *avSound = [[AVAudioPlayer alloc]
           initWithContentsOfURL:soundURL error:nil];
self.soundError = avSound;

我在最后一行收到一条错误消息:成员引用类型'struct objc_class *'是一个指针;也许你的意思是使用 '->' ?

该属性被声明为

@property (nonatomic, strong) AVAudioPlayer *soundError;

指针?我不明白。

谢谢

4

2 回答 2

21

您没有发布完整的方法,但错误可能表明您正在尝试在类方法中分配属性,而不是在实例方法中。

检查您的方法声明是否正确 - 可能应该是

- (void) someMethod

代替

+ (void) someMethod
于 2012-10-04T10:03:20.043 回答
0

要使用点表示法,您需要 getter/setter 方法。如果您不提供自己的方法,请使用

@synthesize soundError;

否则,用于self->soundError设置 ivar。

于 2012-10-04T10:16:09.487 回答