Category添加属性与成员变量
来源:互联网 发布:java wait的用法 编辑:程序博客网 时间:2024/05/16 01:18
一种常见的办法是通过runtime.h中objc_getAssociatedObject / objc_setAssociatedObject来访问和生成关联对象。通过这种方法来模拟生成属性。
头文件声明:
@interface NSObject (IndieBandName)
@property (nonatomic, strong)NSString *indieBandName;
@property (nonatomic, assign)SEL OnImageFinish;
@end
实现的.m文件:
#import "NSObject+Extension.h"
#import <objc/runtime.h>
staticconst void *IndieBandNameKey = &IndieBandNameKey;
staticconst void * g_OnImageFinish = &g_OnImageFinish;
@implementation NSObject (IndieBandName)
@dynamic indieBandName;
- (NSString *)indieBandName {
returnobjc_getAssociatedObject(self,IndieBandNameKey);
}
- (void)setIndieBandName:(NSString *)indieBandName {
objc_setAssociatedObject(self,IndieBandNameKey, indieBandName,OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
- (SEL)OnImageFinish {
SEL action; NSValue *value =objc_getAssociatedObject(self,g_OnImageFinish);
[valuegetValue:&action]; return action;
}
- (void)setOnImageFinish:(SEL)action {
NSValue *value = [NSValuevalue:&action withObjCType:@encode(SEL)];
objc_setAssociatedObject(self,g_OnImageFinish, value,OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
@end
- Category添加属性与成员变量
- Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量
- 让Category支持添加属性与成员变量【转载】
- 59.通过 runtime为Category添加属性与成员变量
- 让Category支持添加属性与成员变量
- 为category添加属性和成员变量
- category添加成员变量
- 日常笔记之一 -- 让Category支持添加属性与成员变量
- iOS Category中添加属性和成员变量的区别
- Category支持添加成员变量
- ios类别(category)不能添加成员变量但是可以添加属性的问题
- Category中的属性和成员变量
- [Objective-C] 通过匿名category给category添加成员变量
- sqlplus登陆方式
- nvarchar和varchar的区别
- CSS content内容生成技术以及应用
- string替换所有指定字符串(C++)
- 广度优先搜索之宝岛探险
- Category添加属性与成员变量
- windows编程,加载dll库示例
- 网页设计:Meta标签详解
- 广州隆鼻哪家医院好
- Asp.NET大文件上传开发总结(一)
- C++字符串完全指南
- Android UI开发专题(一) 之界面设计
- ORMLite简单使用说明
- 排序