zoukankan      html  css  js  c++  java
  • 利用runtime动态生成对象?

    利用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];


  • 相关阅读:
    【数据结构】KMP算法
    【数据结构】银行问题
    ejs模板渲染页面
    node的知识点
    http搭建服务器
    http接收页面传递的数据
    http模块
    node的http模块
    node的fs模块
    base.css
  • 原文地址:https://www.cnblogs.com/yxysuanfa/p/6991072.html
Copyright © 2011-2022 走看看