iOS开发中利用runtime为某个类的category增加属性

原创 2018年04月16日 18:24:57

背景:

项目中为了减少AppDelegate中的代码为AppDelegate写了一个分类,部分代码放在了该分类中。有一个功能需要发送通知,在AppDelegate中进行监听并将通知发送过来的数据进行存储(在AppDelegate的分类中实现)。由于存储的数据需要在全局进行使用,所以本人就想到了在AppDelegate中添加一个属性,将接收到的数据存储在该属性中,以供在AppDelegate的分类中进行全局使用。

代码实现:

(如为一个Person的分类增加一个name的属性)

.m中的代码

  • (void)setName:(NSString *)name{

    objc_setAssociatedObject(self, @selector(name), name, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

}

  • (NSString *)name{

    return objc_getAssociatedObject(self, @selector(name));

}
注意:在.m文件中引入头文件:

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/79964369

Objective-C Runtime 解析(四)—— 在Category中添加属性

在OC中,我们可以通过Category 对已有的类进行扩展,这得益于OC的Runtime机制,让类可以‘动态’的添加方法以及实现。 但是,在Category中我们无法向已有的类中添加属性,本文就介绍...
  • u013378438
  • u013378438
  • 2016年09月05日 21:52
  • 1483

iOS runtime 机制 通过别扩展category给一个类添加属性

http://www.cnblogs.com/tangbinblog/p/3944316.html category使用 objc_setAssociatedObject/objc_getAssoc...
  • jeffasd
  • jeffasd
  • 2016年04月13日 22:54
  • 1045

使用运行时机制向Category中添加属性

简明扼要  前言 了解OC的都应该知道,在一般情况下,我们是不能向Category中添加属性的,只能添加方法,但有些情况向,我们确实需要向Category中添加属性,而且很多系统的API也...
  • cloudywend0207
  • cloudywend0207
  • 2016年07月22日 11:50
  • 1186

iOS运行时-使用Runtime向Category中添加属性以及运行时介绍

前言 了解OC的都应该知道,在一般情况下,我们是不能向Category中添加属性的,只能添加方法,但有些情况向,我们确实需要向Category中添加属性,而且很多系统的API也有一些在Categ...
  • yusirxiaer
  • yusirxiaer
  • 2016年09月09日 10:49
  • 1179

Runtime(三)利用运行时来为类别添加属性

objc runtime 动态增加属性 看一个类别和动态添加属性的例子: UILabel+Associate.h#import @interface UILabel (Associate)- (v...
  • ideaspress
  • ideaspress
  • 2016年03月11日 16:51
  • 793

给分类(Category)添加属性

给分类(Category)添加属性 字数626 阅读513 评论1 喜欢17 遇到一个问题,写了一个分类,但原先类的属性不够用。添加一个属性,调用的时候崩溃了,说是找不到getter、...
  • intheair100
  • intheair100
  • 2015年07月07日 17:37
  • 1670

iOS 给类别(Category)添加weak (property)属性,关联(Associated)

Category 在平常代码中经常使用,在使用第三方工具时,遇到工具不能直接解决当前问题的情况,我就会使用到Category,通过给特定的类加一个方法来处理这种情况。本文仅仅介绍给(Category)...
  • yan_1564335
  • yan_1564335
  • 2017年01月03日 17:47
  • 1364

Runtime的实践——给一个类添加属性(关联对象)

相关文章: 《Runtime的初步认识——结构体与类》 《Runtime的初步认识——消息机制》一提到给一个类添加点什么,我们有可能首先就想到类别(Category)。那么我们就弄一下。利用 Ca...
  • RuiWang321
  • RuiWang321
  • 2016年05月11日 09:33
  • 3251

iOS Runtime详解之给Category添加成员变量(怎么设置关联对象)

好吧,没办法,在项目中我想用category,至于为什么用category而不用继承,这个我在这就不多说了,我的category博客中特意讲过,在这里就不赘述,我用了category,但是想要给我这个...
  • baidu_31683691
  • baidu_31683691
  • 2016年01月18日 16:08
  • 1850

iOS开发之category动态添加属性的方法------关联

本文转载自:http://www.cnblogs.com/wengzilin/p/4331685.html?utm_source=tuicool  编程小翁@博客园,邮件zilin_weng@163....
  • u012273301
  • u012273301
  • 2016年05月13日 20:51
  • 1104
收藏助手
不良信息举报
您举报文章:iOS开发中利用runtime为某个类的category增加属性
举报原因:
原因补充:

(最多只允许输入30个字)