次のようなプロパティを持つクラスがあるとします。
@property(nonatomic,retain) NSString* un_conventional;
私は次のようにセレクターを形成しようとしました:
SEL setterMethod =
NSSelectorFromString(
[NSString stringWithFormat:@"set%@", [key capitalizedString]]
);
if ([customer respondsToSelector:setterMethod]) {
//do something
}
keyPS:値を持つ変数であることを当然のことと考えてくださいun_conventional
capitalizedString問題は、これが正しい setter メソッドと一致しないことのようです。名前の代わりにsetterMethod名前が付けられるためです... 文字 "c" も大文字です!setUn_ConventionalsetUn_conventional
setUn_conventionalそれで、名前付きのセレクターになり、respondsToSelector を介して一致するために使用できるように、そのようなシナリオのためにセレクターを動的に準備する方法について誰か提案がありますか?