在ios开发中,一些请求 kvc 下拉列表 图片请求等等自己手写代码的话非常麻烦,还容易出现一系列的问题,现在整理了一些常用的一些小框架。
其中MJExtension 和 MJRefresh 这两个框架是 MJ自己写的,
1、AFNetworking-master 是用于数据请求的
用法:
[objc] view plaincopy
- // 1.创建请求管理对象
- AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
- // 2.封装请求参数
- NSMutableDictionary *params = [NSMutableDictionary dictionary];
- params[@"access_token"] = [IWAccountTool account].access_token;
- // 3.发送请求
- [mgr GET:@"https://api.weibo.com/2/statuses/home_timeline.json" parameters:params
- success:^(AFHTTPRequestOperation *operation, id responseObject) {
- } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
- }];
2、MBProgressHUD 是一个process的dialog
用法
[objc] view plaincopy
- [MBProgressHUD showMessage:@"哥正在帮你加载中..."];
3、MJExtention 是kvc 的一个工具,字典转模型 ,kvc的缺点就是 字典转模型的时候,模型数据必须与字典一一对应,不对应的话就会出问题,实际上有的时候服务器传的值客户端有的是不用的,那么就会出现一些问题,
MJExtention就解决了这个问题, 这个框架遍历了 模型数据中的 属性, 如果有属性则转赋值,没有就不管, MJExtention 中 封装的是object,所以任何的对象都可以用 封装中的方法
用法
[objc] view plaincopy
- // 将字典数组转为模型数组(里面放的就是IWStatus模型)
- NSArray *statusArray = [IWStatus objectArrayWithKeyValuesArray:responseObject[@"statuses"]];
4,MJRefresh 框架还没用到,待更新
5、SDWebImage-master 框架是专门处理图片的
我们在请求网络上的图片时,容易出现一些问题,1、在主线程请求图片啦
2、请求图片返回的时候item已经变了也可以说position从0变到显示条目+1的位置了,或者说已经回收了,这样容易出现图片一闪闪,3、图片请
求的时候由于在手机端流量受限,所以说我们需要缓存图片,缓存图片空间的管理等等。。。。。
SDWebImage-master 这些问题都替我们搞定了
用法
[objc] view plaincopy
- // 2.头像
- [self.iconView setImageWithURL:[NSURL URLWithString:@"http://xxxxxxxxxxxxx.jpg"] placeholderImage:[UIImage imageWithName:@"avatar_default_small"]];
框架下载地址:http://download.csdn.net/detail/codywangziham01/7895209
时间: 2024-10-23 07:58:14