オブジェクト、プロパティの名前、およびその値を受け取る関数があります。次のような単純なものでオブジェクトのプロパティを設定できますか:
-(void)dynamicSetterWithProperty:(NSString*)propertyThatIsKnownOnlyInRuntime
andValue:(NSString*)valueThatIsKnownOnlyInRuntime{
_myObject.propertyNameThatIsKnownOnlyInRuntime = valueNameThatIsKnownOnlyInRuntime;
}
または、この醜い方法でそれを行う必要がありますか:
-(void)dynamicSetterWithProperty:(NSString*)propertyThatIsKnownOnlyInRuntime
andValue:(NSString*)valueThatIsKnownOnlyInRuntime{
if([propertyNameThatIsKnownOnlyInRuntime isEqualToString@"name"]){
_myObject.name = valueNameThatIsKnownOnlyInRuntime;
}
else if([propertyNameThatIsKnownOnlyInRuntime isEqualToString@"age"]){
_myObject.age = valueNameThatIsKnownOnlyInRuntime;
}
}