Set Objective-C property by string

2020-02-11 17:43发布

I'm wondering if there's an easy way to set (or retrieve) an Objective-C property by a NSString... It is possible to use NSSelectorFromString, but I'd like an easier (and less hacky way) to do it... Something like

[object setProperty:@"propertyValue" named:@"propertyName"];

is equivalent to:

object.propertyName = @"propertyValue";

I don't really want to mess around with the @"propertyName" and turn it into a @"setPropertyName:" for the NSSelectorFromString command... I may have no other choice, but if anyone knows a better way to do this, your help would be greatly appreciated!

1条回答
兄弟一词,经得起流年.
2楼-- · 2020-02-11 18:24

Use Key-Value Coding. Your example would be [object setValue:@"propertyValue" forKey:@"propertyName"].

查看更多
登录 后发表回答