美文网首页
Runtime的动态添加属性

Runtime的动态添加属性

作者: 成长的船 | 来源:发表于2017-08-08 10:03 被阅读0次

Add property

动态的添加属性

#import "NSObject+Objc.h"
#import <objc/runtime.h>

@implementation NSObject (Objc)

-(void)setName:(NSString *)name
{
    /* objc_setAssociatedObject(id object, const void *key, id value, objc_AssociationPolicy policy)
     * object :给哪个类添加属性
     * key:属性名,根据key,来进行关联,eg:addName来关联name
     * objc_AssociationPolicy: 关联策略,就是那种存储类型 NSString用copy撒
     */

    objc_setAssociatedObject(self, @"addName", name, OBJC_ASSOCIATION_COPY_NONATOMIC);

}
-(NSString *)name{

    return objc_getAssociatedObject(self, @"addName");
}
@end

相关文章

  • runtime的理解(二)

    主要内容 利用 runtime 交换方法 利用 runtime 动态添加方法 利用 runtime 动态添加属性 ...

  • 动态添加属性

    动态添加属性:什么时候需要动态添加属性? 开发场景:给系统的类添加属性的时候,可以使用runtime动态添加属性方...

  • runtime相关

    修改系统方法 动态添加方法 动态给系统类添加属性(给分类添加属性) runtime+kvc 转换模型

  • iOS Runtime经典面试题整理

    1,runtime 如何动态添加方法和属性和动态属性控制 通过苹果官方文档查看,我们可以发现runtime的内部存...

  • Objective-C关联对象的实现

    目的 在 NSObject 类中,添加 name 属性。 方案 利用 runtime 的相关方法: 动态添加属性 ...

  • iOS runtime 动态添加属性,方法,方法交换案例

    iOS runtime 动态添加属性,方法,方法交换案例 动态添加属性 我之前写过分类的文章,说过,分类不能添加成...

  • runtime和oc内存区域(2018-04-02)

    runtime常用的几个方法: 交换方法 动态添加属性 动态添加方法 1.交换方法 class_getClassM...

  • Runtime动态添加属性

    类别(Category)添加属性 .h文件 .m文件实现 UIViewController调用

  • RunTime动态添加属性

    一. 为什么要动态添加属性? 思考:当系统提供的类满足不了我们要求的时候, 则需我们手动添加属性,且希望能给系统直...

  • runtime动态添加属性

    在自己定义的类中添加属性很简单,直接在.h中声明,在.m中写好getter和setter方法即可.但是如果要给系统...

网友评论

      本文标题:Runtime的动态添加属性

      本文链接:https://www.haomeiwen.com/subject/uuttrxtx.html