iOS扩展属性:category可以扩展类的方法,但是不能扩张类的属性。如果要扩展类的属性,可以用associative,这个相对于category来说用的比较少,而且他还用到运行时编程,必须使用<obj/runtime.h>,使用objc_getAssociatedObject,objc_setAssociatedObject以及objc_removeAssociatedObjects.这几个方法的生命如下:
示例代码如下:
1、先创建一个person类
#import <Foundation/Foundation.h>
@interface Person : NSObject @property (nonatomic, copy) NSString *name; @end #import "Person.h" @implementation Person @end
2、新建一个分类,运用associative添加属性