有时候需要给一个控件动态的添加一个属性,比如button控件等。。。
代码如下
给新加的属性赋值
调用set方法赋值
[self.CharacterBtn setOrderTags: [NSString stringWithFormat:@"%ld",11]];
.h文件如下
#import <UIKit/UIKit.h>
@interface UIControl (Category)
@property (nonatomic, strong) NSString * OrderTags;
@end
.M文件如下
#import "UIControl+Category.h"
#import "objc/runtime.h"
static const void * OrderTagsBy = &OrderTagsBy;
@implementation UIControl (Category)
@dynamic OrderTags;
-(void)setOrderTags:(NSString *)OrderTags {
objc_setAssociatedObject(self, OrderTagsBy, OrderTags, OBJC_ASSOCIATION_COPY_NONATOMIC);
}
-(NSString *)OrderTags {
return objc_getAssociatedObject(self, OrderTagsBy);
}
@end
oc是一个运行时语言。都要给予run_tima时间。
(提高装逼能力!!!)
也可以添加"洲洲哥"的微信公众号