码迷,mamicode.com
首页 > 移动开发 > 详细

iOS动态的判断一个对象中是否包含一个属性

时间:2014-12-17 16:19:48      阅读:2075      评论:0      收藏:0      [点我收藏+]

标签:style   blog   ar   io   os   sp   for   on   2014   

<span style="font-family:Arial, Helvetica, sans-serif;">有时候我们可能会需要判断一个对象是否有这个属性,那么我们可以用下面这个方法</span>
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;">#pragma mark - 动态的判断一个类中是否包含一个属性</span>
+ (BOOL) getVariableWithClass:(Class) myClass varName:(NSString *)name{    unsigned int outCount, i;
    Ivar *ivars = class_copyIvarList(myClass, &outCount);
    for (i = 0; i < outCount; i++) {
        Ivar property = ivars[i];
        NSString *keyName = [NSString stringWithCString:ivar_getName(property) encoding:NSUTF8StringEncoding];
        keyName = [keyName stringByReplacingOccurrencesOfString:@"_" withString:@""];
        if ([keyName isEqualToString:name]) {
            return YES;
        }
    }
    return NO;
}

YES包含,NO不包含。 把一些通用的方法抽离出来可以让程序更加简洁

互相学习,感谢您的阅读

iOS动态的判断一个对象中是否包含一个属性

标签:style   blog   ar   io   os   sp   for   on   2014   

原文地址:http://blog.csdn.net/meters_l/article/details/41983215

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!