厌倦了在 Category 实现方法中使用 @Dynamic Property 的 objc_getAssociatedObject
和 objc_setAssociatedObject
吗?
链接 博客文章
YSDynamicProperties
通过 CocoaPods 提供,要安装它,只需将以下行添加到 Podfile 中:
pod 'YSDynamicProperties'
#import "NSObject+YSDynamicProperties.h"
添加到 Category 文件。.h
Category 文件中定义属性。.m
文件中每个属性前添加 @dynamic
声明。示例
@interface Superman (YSKit)
@property (strong, nonatomic) UIColor *ys_ShirtColor;
@property (strong, nonatomic) NSArray *ys_Weapons;
@end
#import "NSObject+YSDynamicProperties.h"
@implementation Superman (YSKit)
@dynamic ys_ShirtColor, ys_Weapons;
+ (void)load
{
[self implementDynamicPropertyAccessors];
}
@end