博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用runtime给分类添加属性
阅读量:6229 次
发布时间:2019-06-21

本文共 484 字,大约阅读时间需要 1 分钟。

在分类中利用@property添加属性,只能声明实例变量的存取声明,而没有存取方法的实现,可以利用runtime实现。

在头文件中定义属性

@property (nonatomic, copy)NSString *name;

 

在.m文件中实现存取方法

static char *key = "name";

 

- (NSString *)name

{

    // 根据关联的key,获取关联的值。

    return objc_getAssociatedObject(self, key);

}

 

- (void)setName:(NSString *)name

{

    // 第一个参数:给哪个对象添加关联

    // 第二个参数:关联的key,通过这个key获取

    // 第三个参数:关联的value

    // 第四个参数:关联的策略

    objc_setAssociatedObject(self, key, name, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

}

 

转载于:https://www.cnblogs.com/ladyotao/p/5908230.html

你可能感兴趣的文章
Android 数据库框架ormlite
查看>>
零基础学习贴:如何收取短信回复消息
查看>>
网鱼网咖-利用数加快速搭建大数据平台,极致洞察,为客户带来从所未有的体验。...
查看>>
保护App重要数据,防止Cycript/Runtime修改
查看>>
iperf 测试网络性能指标
查看>>
windows下安装mysql压缩包版[转]
查看>>
Emacs常用命令汇总
查看>>
从传统IT快速走向公共云计算
查看>>
小菜一步一步学数据结构之(一)基本概念和术语
查看>>
《Redis官方教程》Redis集群规范
查看>>
Mac下没有make命令解决办法
查看>>
DLL中传递STL参数
查看>>
postgresql 范围类型
查看>>
隐藏 tengine 和 tomcat 版本号
查看>>
非面试向跨域实践详解
查看>>
一个非常好看的图片选择框架LPhotoPicker,确定不来看看么
查看>>
线上压缩代码-定位错误
查看>>
一个简洁且强大的状态管理库 - iFlow
查看>>
IP地址转换函数——inet_pton inet_ntop inet_aton inet_addr inet_ntoa
查看>>
设计模式笔记---4. 装饰模式
查看>>