有时候需要给一个控件动态的添加一个属性,比如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时间。
(提高装逼能力!!!)
添加微信公众号最快最好的收听
如有问题可添加我的QQ:1290925041
还可添加QQ群:234812704(洲洲哥学院)
欢迎各位一块学习,提高逼格!
也可以添加洲洲哥的微信公众号
网友评论
- (BOOL)hasChildViewController {
return [objc_getAssociatedObject(self, kHasChildViewController) boolValue];
}
- (void)setHasChildViewController:(BOOL)hasChildViewController {
objc_setAssociatedObject(self, kHasChildViewController, [NSNumber numberWithBool:hasChildViewController], OBJC_ASSOCIATION_ASSIGN);
}
加群一起学习:234812704(洲洲哥之说)