4

これを使用してAVAudioPlayerをプロパティに割り当てようとしています

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

最後の行に次のようなエラーが表示されます。メンバー参照型'structobjc_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 に答える