runtime使用技巧三

runtime反射属性列表:


把反射属性的用法说完。。。

IOS网络请求大家应该很不陌生了把,但有时候我们需要向服务器传递的数据比较多,这个时候,也是我们runtime发挥的时候了。

直接上代码,童鞋们估计快该骂人了。一个反射属性,讲这么久。。。


-(void)createPostDateWithDic{
NSArray * arr = [self.requestDictionary allKeys];
for (int i = 0; i < arr.count; i ++) {
if ([self.requestDictionary objectForKey:[arr objectAtIndex:i]] != nil) {
[self.mainRequest setPostValue:[self.requestDictionary objectForKey:[arr objectAtIndex:i]] forKey:[arr objectAtIndex:i]];
}
};
}

-(void)createPostDateWithModel{
unsigned int outCount, i;
objc_property_t *properties = class_copyPropertyList([self.requestModel class], &outCount);
for (i=0; i<outCount; i++) {
objc_property_t property = properties[i];
NSString * key = [[NSString alloc]initWithCString:property_getName(property) encoding:NSUTF8StringEncoding];
id value = [self.requestModel valueForKey:key];
if (value != nil) {
[self.mainRequest setPostValue:value forKey:key];
}
}
}

上面是两个方法都是自己封装的POST网络请求中使用的,基于ASI,这两个方法的使用,会使得你的网络请求的代码实现,十分的简介,高效。

好了童鞋们相信到了这里,你对runtime反射属性的用法已经了解的差不多了,有问题,欢迎大家留言。多多提宝贵意见。

时间: 2024-10-05 10:47:31

runtime使用技巧三的相关文章

思科命令配置小技巧三:alias 命令

大家都用过手机上的快捷拨号设置 思科设备是否支持命令的快捷键定义呢 答案是肯定的 suzhouxiaoniu(config)#alias exec xx show ip inter bri  xx是自定义的快捷键名称,可以是数字 suzhouxiaoniu#xx 直接敲定义好的名称Interface                  IP-Address      OK? Method Status                ProtocolFastEthernet1/0          

技巧三 Chart上曲线的点鼠标放上去显示横纵坐标

技巧三: 在chart的上曲线上的点 鼠标放上去,显示此点的横纵坐标代码如下:procedure TForm1.pntsrsSeries1MouseEnter(Sender: TObject);vari:integer;x1,y1:string;begin pntsrsSeries1.Cursor:=crHandPoint; cht1.showHint:=true; i:=cht1.Series[1].GetCursorValueIndex; x1:=FormatFloat('0.000',ch

多屏复杂动画CSS技巧三则(转载)

当下CSS3应用已经相当广泛,其中重要成员之一就是CSS3动画.并且,随着CSS动画的逐渐深入与普及,更复杂与细腻的动画场景也如雨后春笋般破土而出. 例如上个月做的「企业QQ-新年祝福」活动: 虽然视频内容是手机上的显示效果,但是,这个“企业新年祝福活动”原本只针对桌面端,移动端是后来辅助增强(增加了相当于活动页面UV 5.7%的点击).而目前大多数类似页面只针对移动端,例如其他同事实现的QQ空间5.0预约页第二版: 扫码(需登录)或者链接二选一: 访问demo戳这里 因此,需要多一点适配的技巧

Linux Shell常用技巧(三) sed

Linux Shell常用技巧(三) sed 八.流编辑器sed 8.1 sed简介 sed是stream editor的缩写,一种流编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.sed主要用来自动编辑一个或多个文件,简化对文件的反复操作,编写转换程序等

Linux Shell常用技巧(三)

八. 流编辑器sed: sed一次处理一行文件并把输出送往屏幕.sed把当前处理的行存储在临时缓冲区中,称为模式空间(pattern space).一旦sed完成对模式空间中的行的处理,模式空间中的行就被送往屏幕.行被处理完成之后,就被移出模式空间,程序接着读入下一行,处理,显示,移出......文件输入的最后一行被处理完以后sed结束.通过存储每一行在临时缓冲区,然后在缓冲区中操作该行,保证了原始文件不会被破坏.        1.  sed的命令和选项: 命令 功能描述 a\  在当前行的后

经验分享:多屏复杂动画CSS技巧三则

当下CSS3应用已经相当广泛,其中重要成员之一就是CSS3动画.并且,随着CSS动画的逐渐深入与普及,更复杂与细腻的动画场景也如雨后春笋般破土而出.例如上个月做的「企业QQ-新年祝福」活动: 感谢shirley帮忙录制上面的视频,虽然视频内容是手机上的显示效果,但是,这个“企业新年祝福活动”原本只针对桌面端,移动端是后来辅助增强(增加了相当于活动页面UV 5.7%的点击).而目前大多数类似页面只针对移动端,例如其他同事实现的QQ空间5.0预约页第二版: 扫码(需登录)或者链接二选一: 访问dem

分享页面级SEO小技巧三点

今天分享三个页面级SEO的小技巧,页面加载速度.网站结构什么的讲出来可能比较抽象,无法直接拿去实践,就不说了,我们讲一点可以立即拿去用的东西,不过,具体操作起来就要靠个人了. 1.增加页面内容,调整关键词密度 最好将关键词布局到页面重要位置,通常所说的F型布局即可,一般未经过专业优化的网站这样做过以后排名会有一个小幅度的提升. 至于原理,搜索引擎的工作主要有四大部分组成:抓取.索引.排序.展现.发外链需要等搜索引擎抓取.过滤.计算,周期长.见效慢,通常要达到质和量的积累才能有良好的效果;内链的建

Freemarker常用技巧(三)

freemarker模板解析过程 例如:一个freemarker表达式<body> ${hello} </body>,会被解析成三个部分,分别是<body>${hello}</body>前面和后面的body标签,在freemarker中被定义为TextBlock,中间的变量定义为DollarVariable.那么目前的结构也就是RootExpression = TextBlock DollarVariable TextBlock.解释器一进来将会对RootE

runtime使用技巧二

接着上一篇讲解runtime反射属性的用法 runtime反射属性列表: 在很多时候,Android和IOS经常需要在程序中生成一个列表,并且列表中数据格式什么的基本相同.Android还好一点,谷歌的Gson很完美的解决了解析的问题. 前提是你需要生成一个跟你的借口返回数据完全相同的model,这在Android开发中是提高速率非常简洁有效的方法,并且减少了自用解析的繁琐过程和中间出现的一些问题. 但在IOS中我们经常在http之后获得的数据为字典型的,如何把字典型的array转变为model