美文网首页
学习:objc_setAssociatedObject的简单使用

学习:objc_setAssociatedObject的简单使用

作者: _秃头少女_ | 来源:发表于2017-03-15 11:34 被阅读20次

    今天看项目老代码 看到 objc_setAssociatedObject , 因为之前很少用runtime方法,不知所以,就网上查了下,本文涉及这两个方法,简单来说 一个负责赋值,一个负责取值


    //给指定对象添加属性,并设置value 

    0.jpg

    //policy 策略 枚举

    enum {

    OBJC_ASSOCIATION_ASSIGN = 0,

    OBJC_ASSOCIATION_RETAIN_NONATOMIC = 1,

    OBJC_ASSOCIATION_COPY_NONATOMIC = 3,

    OBJC_ASSOCIATION_RETAIN = 01401,

    OBJC_ASSOCIATION_COPY = 01403

    };

    //下面是一个简单的使用


    首先导入头文件#import<objc/runtime.h>

    拖拽一个 button点击方法下给alert添加属性@"key property"对应value @"李凯利",点击alert 获取添加的属性值

    1.jpg

    运行结果:

    2.jpg

    //扩展

    //移除指定对象实例的所有扩展属性

    OBJC_EXPORT void objc_removeAssociatedObjects(id object)

    OBJC_AVAILABLE(10.6, 3.1, 9.0, 1.0);

    相关文章

      网友评论

          本文标题:学习:objc_setAssociatedObject的简单使用

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