1

私の.hインターフェースでは:

@property (nonatomic, strong) UIView *myView;

私の.mで:

- (void)setMyView:(UIView *)aView {
    _myView = aView; //Use of undeclared identifier "_myView"
}

エラーの理由

4

3 に答える 3

-1

ヘッダー ファイルでプロパティmyViewを宣言するだけでは、 というインスタンス変数は作成されません_myView。追加する必要があるのは、 の上にある次のとおり@implementationです。

@interface ClassName ()
{
    UIView *_myView;
}

これは、他のクラスに知らせずにインスタンス変数とプロパティを追加できるようにするクラス拡張です。次に、まだ持っていない場合は、合成行を の下に追加します@implementation

@synthesize myView = _myView;

synthesize コマンドは、_myView インスタンス変数にリンクされたゲッター メソッドとセッター メソッドを作成します。これにより、ゲッター メソッドを実装しなくても、カスタム セッターを実装することもできます。

お役に立てれば!

于 2013-05-07T22:45:16.237 に答える