从字典中设置UIlabel属性名称

时间:2012-05-14 08:16:11

标签: ios properties uilabel

我遇到了一个非常有趣的问题。我有一个UILabel和许多标签属性。对应于每个属性,都有一个为标签设置的值。这个属性值的东西在字典中(作为键值对)。可以说,有一个键值对作为“text”:“abc”(这里的文本是我的键,abc是必须设置的相应文本)。我不想使用myLabel.text =;就像这里的值可以来自任何数组或nsstring一样,我希望该属性也是动态的。以下是我想要的样本:

NSMutableDictionary *tryDict = [[NSMutableDictionary alloc]init];
[tryDict setObject:@"abc" forKey:@"text"];
UILabel *lblName = [[UILabel alloc]init];
NSArray *allKeys = [tryDict allKeys];
NSArray *allValues = [tryDict allValues];
NSSTring *textProp = [allKeys objectAtIndex:0];
lblName.textProp = [allValues objectAtIndex:0]; // giving an error since textProp is not a UIlabel property.

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:2)

[lblName setValuesForKeysWithDictionary:tryDict]这种方法正是您所需要的。