如果我有一个类成员,我可以在我的viewcontroller中说UIImageView:
UIImageView* imageView = self.memberImageView1;
有没有办法可以通过字符串获取此成员?像是这样的事情:
UIImageView* imageView =[self.getMember(@"memberImageView1")];
当然我在谈论使用objective-c语法的解决方案,而不是自定义。 感谢。
答案 0 :(得分:6)
我在反思之前建议Key Value Coding。
UIImageView* imageView =[self valueForKey:@"memberImageView1"];
答案 1 :(得分:1)
答案 2 :(得分:1)
为了完整起见,完全基于疯狂的方式如下:
UIImageView *imageView;
SEL selector = NSSelectorFromString(@"memberImageView1");
NSMethodSignature *signature = [self instanceMethodSignatureForSelector:selector];
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];
[invocation setSelector:selector];
[invocation setTarget:self];
[invocation invoke];
[invocation getReturnValue:&imageView];
请随时发送至Daily WTF。