iOS DeveloperiOS 开发

类别添加属性 运行时runtime

2016-06-16  本文已影响0人  EarthMass

#import"BaseClass.h"

@interfaceBaseClass (BaseCategary)

@property(nonatomic,copy)NSString* string;

- (void)BaseCategaryMethod;

@end

#import"BaseClass+BaseCategary.h"

#import

NSString*constkDHStyleKey =@"kDHStyleKey";

@implementationBaseClass (BaseCategary)

@dynamicstring;

- (void)BaseCategaryMethod {

NSLog(@"BaseCategaryMethod");

}

- (void)setString:(NSString*)string {

//    self.a = a;

objc_setAssociatedObject(self, (__bridgeconstvoid*)(kDHStyleKey), string,OBJC_ASSOCIATION_COPY);

}

- (NSString*)string {

//    return self.a;

return objc_getAssociatedObject(self, (__bridgeconstvoid*)(kDHStyleKey));

}

使用:

#import"BaseClass+BaseCategary.h"

BaseClass* baseClass = [[BaseClassalloc]init];

[baseClassBaseCategaryMethod];

baseClass.string=@"aaaaad";

NSLog(@"baseClass.string == %@",baseClass.string);

上一篇 下一篇

猜你喜欢

热点阅读