使用runtime给属性批量初始化赋值
来源:互联网 发布:哈尔滨php在哪找工作 编辑:程序博客网 时间:2024/04/29 09:59
做的时候经常发现一个viewModel类有几十个属性,初始化赋值太麻烦还耗时间,所以就想到runtime,进行批量赋值
要包含头文件:
#import <objc/runtime.h>
具体语句方法
- (instancetype)initWithModel:(id)model {
self = [superinit];
if (!self) {
returnnil;
}
_model = model;
unsignedint propertyCount = 0;
objc_property_t *properties =class_copyPropertyList([selfclass], &propertyCount);
for (unsignedint i = 0; i < propertyCount; i ++ ) {
objc_property_t property = properties[i];
constchar *name = property_getName(property);
constchar *attributes = property_getAttributes(property);
NSString *key = [NSStringstringWithUTF8String:name];
NSString *type = [NSStringstringWithUTF8String:attributes];
if ([typerangeOfString:@"NSString"].location !=NSNotFound ) {
[selfsetValue:@""forKey:key];
}
}
//RAC(self, catId) =
returnself;
}
这得节约多少时间,时间就是生命,时间就是金钱
- 使用runtime给属性批量初始化赋值
- 利用runtime给model属性赋值
- iOS开发之遍历Model类的属性并完善使用Runtime给Model类赋值
- iOS开发之遍历Model类的属性并完善使用Runtime给Model类赋值
- iOS开发之遍历Model类的属性并完善使用Runtime给Model类赋值
- 批量给控件赋值
- iOS开发之使用Runtime给Model类赋值
- iOS开发之使用Runtime给Model类赋值
- runtime 对 viewcontroller属性赋值
- 使用Spring实现属性文件给常量赋值
- 使用JS给value属性赋值的实例
- 使用js给input的value属性赋值
- c# 泛型初始化 和 给泛型属性赋值(笔记)
- iOS RunTime交换方法和给变量赋值的简单使用
- 如何给readonly属性赋值
- JS给对象属性赋值
- underscore.js 给表单批量赋值
- Java使用PropertyDescriptor获取实体类中私有属性的值,并给私有属性赋值
- Java----AWT组件开发和Swing界面编程(一)
- [FAQ10019]HDMI/MHL如何修改手机默认横竖屏显示方式
- js数组操作方法学习
- protractor设置cookie登录
- 注解
- 使用runtime给属性批量初始化赋值
- iOS海哥开发笔记 (海哥原创,CALayer简介 以及基本使用)
- 【leetcode】第8题:String to Integer(atoi)
- 线程间通信
- Android studio中如何设置与eclipse中相同的快捷键
- FAQ11755]92 KK版本出现亮点/横线显示异常问题
- 关于设计模式的整理
- mysql 优化之innodb_flush_log_at_trx_commit
- WIFI信号强度