iOS运行时,如何增加成员变量
Posted widgetbox
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS运行时,如何增加成员变量相关的知识,希望对你有一定的参考价值。
必须实现getter
和setter
方法
```
- (void)setName:(NSString *)name {
/**
* 为某个类关联某个对象
*
* @param object#> 要关联的对象 description#>
* @param key#> 要关联的属性key description#>
* @param value#> 你要关联的属性 description#>
* @param policy#> 添加的成员变量的修饰符 description#>
*/
objc_setAssociatedObject(self, @selector(name), name, OBJC_ASSOCIATION_COPY_NONATOMIC);
}
- (NSString *)name {
/**
* 获取到某个类的某个关联对象
*
* @param object#> 关联的对象 description#>
* @param key#> 属性的key值 description#>
*/
return objc_getAssociatedObject(self, @selector(name));
}
```
以上是关于iOS运行时,如何增加成员变量的主要内容,如果未能解决你的问题,请参考以下文章
iOS动态性 运行时runtime初探(强制获取并修改私有变量,强制增加及修改私有方法等)