码迷,mamicode.com
首页 > 其他好文 > 详细

利用runtime动态生成对象?

时间:2017-06-12 10:43:34      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:char   line   family   round   color   get   classname   art   pop   

利用runtime我们能够动态生成对象、属性、方法这特性

假定我们要动态生成DYViewController,并为它创建属性propertyName

1)对象名

    NSString *class = @"DYViewController";

    const char *className = [class cStringUsingEncoding:NSASCIIStringEncoding];

2)从一个字符串返回一个Class

    Class newClass = objc_getClass(className);

3)创建类

        Class superClass = [UIViewController class];

        newClass = objc_allocateClassPair(superClass, className, 0);

4) 注冊

注冊你创建的这个类

        objc_registerClassPair(newClass);

5)创建DYViewController对象

    id instance = [[newClass alloc] init];

6)给类添加属性propertyName,值为propertyValue

            利用kvc赋值

            [instance setValue:propertyValue forKey:propertyName];


利用runtime动态生成对象?

标签:char   line   family   round   color   get   classname   art   pop   

原文地址:http://www.cnblogs.com/yxysuanfa/p/6991072.html

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