自己写了一段iOS Objective-C的反射的代码
2013-12-19 19:09
375 查看
做iOS开发已经两年多了。最近,在整理以前的代码,找到当时卡壳的一些代码片段,写博客跟大家分享一下。欢迎iOS初学者订阅我的博客,有什么问题可以留言交流。以下正文:
+ (id)getObject:(Class *)objectClass fromData:(NSDictionary *)dictionary
{
id resultObject = [[objectClass
alloc] init];
NSArray *keys = [dictionary
allKeys];
for (NSString *key
in keys) {
NSString *methodName = [NSString
stringWithFormat:@"set%@:", [key
capitalizedString]];
SEL selector = NSSelectorFromString(methodName);
if ([resultObject
respondsToSelector:selector]) {
[resultObject
performSelector:selector
withObject:[dictionary objectForKey:key]];
}
}
return resultObject;
}
不做太多评论,随意感受一下,想想一下应用场景,欢迎评论讨论。
+ (id)getObject:(Class *)objectClass fromData:(NSDictionary *)dictionary
{
id resultObject = [[objectClass
alloc] init];
NSArray *keys = [dictionary
allKeys];
for (NSString *key
in keys) {
NSString *methodName = [NSString
stringWithFormat:@"set%@:", [key
capitalizedString]];
SEL selector = NSSelectorFromString(methodName);
if ([resultObject
respondsToSelector:selector]) {
[resultObject
performSelector:selector
withObject:[dictionary objectForKey:key]];
}
}
return resultObject;
}
不做太多评论,随意感受一下,想想一下应用场景,欢迎评论讨论。
相关文章推荐
- iOS应用开发最佳实践:编写高质量的Objective-C代码
- iOS常用代码整理 Objective-C版
- 【IOS 开发】Objective - C 面向对象高级特性 - 包装类 | 类处理 | 类别 | 扩展 | 协议 | 委托 | 异常处理 | 反射
- #python#自己写的一段小代码
- 今天学了线性表顺序表示,自己写了一段代码!实现了 插入和删除!这也是第一次写博客
- iOS 开发--Objective-C 反射机制
- 分享一段ios数据库代码,包括对表的创建、升级、增删查改
- iOS_15_通过代码自己定义cell_微博UI
- iOS安全攻防(二十三):Objective-C代码混淆
- iOS安全攻防:static和被裁的符号表,Objective-C代码混淆,敏感逻辑的保护方案(1)
- iOS应用开发最佳实践:编写高质量的Objective-C代码
- iOS应用开发最佳实践系列一:编写高质量的Objective-C代码
- iOS安全攻防(二十三):Objective-C代码混淆
- 自己整理的IOS网络检测和版本检测代码
- 设计模式之单一职责原则(iOS开发,代码用Objective-C展示)
- xcode反汇编调试iOS模拟器程序(八)反汇编自己的代码来掌握规则
- iOS纯代码实现界面建立、跳转、导航栏(无storyboard、无nib)(Objective-C)
- IOS上传照片(自己的代码整理了一下)
- iOS应用开发最佳实践:编写高质量的Objective-C代码
- iOS 开发--Objective-C 反射机制