【備忘録】[objective-c]カテゴリでプロパティを追加する

既存のクラスに対してプロパティだけ追加したいって時に毎回調べなおすので自分用にメモ。
最近はswiftがメインですがたまに昔のソースをメンテする時ように。

//カテゴリでプロパティを追加する
#import 

/**
 * UITableView拡張カテゴリ
 */
@interface UITableView (AddProperty)

@property (nonatomic, strong) NSString *value;

@end

@implementation UITableView (AddProperty)

@dynamic value;

-(void)setValue:(NSString *)value{
    objc_setAssociatedObject(self, _cmd, value, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}

-(NSMutableArray*)value{

    return objc_getAssociatedObject(self, @selector(setValue:));
}

@end