0

とにかく、実行時にリフレクションを使用して発見できる、objective-c のプロパティに装飾を追加することはできますか? 次のクラスを定義したい

@interface ABC{}

@property (nonatomic, copy) NSString * s1;
@property (nonatomic, copy) NSString * s2;
@property (nonatomic, copy) NSString * s3;

プロパティ s1 と s2 にある種の属性を追加して、実行時にこれらのプロパティを検出し、s3 には適用できない何らかの操作を実行できるようにしたいと考えています。だから何か

[Run-Time_Discover] @property (非アトミック、コピー) NSString * s1;

Tinterface ビルダーは IBOutlet を使用してプロパティを検出することを知っています。実行時にそのようなマクロによって定義されたプロパティを検出できますか?

4

1 に答える 1

0

次のように、オブジェクトがメソッドを実装しているかどうかを確認できます (プロパティは単なるメソッドであることを忘れないでください)。

[theObject respondsToSelector:@selector(s3)];

ここに注釈は必要ありません。

于 2013-03-15T02:16:42.290 に答える