zoukankan      html  css  js  c++  java
  • 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反射属性的用法已经了解的差不多了,有问题,欢迎大家留言。多多提宝贵意见。

  • 相关阅读:
    openstack-9块存储服务(此服务可选)
    openstack-7dashboard(仪表盘)
    openstack-6neutron(网络服务)
    openstack-5computer(计算服务)
    openstack-4glance(镜像服务)
    openstack-12补充
    openstack-10实现VPC自定义网络
    openstack-8实现内外网结构
    openstack-3keystone(认证服务)
    js实现填写身份证号、手机号、准考证号等信息自动空格的效果
  • 原文地址:https://www.cnblogs.com/ggxbq/p/3732062.html
Copyright © 2011-2022 走看看