百思学习笔记12-网络请求到推荐关注
来源:互联网 发布:域名需要几天 编辑:程序博客网 时间:2024/06/07 12:15
接下来我们做推荐关注的界面:
从上面的图片可以有很多的数据,这些数据都是从服务器请求到的
既然要网络请求我们就要添加网络的第三方框架到项目当中
首先
我强烈推荐一款插件,是用来下载Xcode中插件的,叫做Alcatraz,目的是可以快速的下载需要的插件。
教程地址:点击打开链接
然后通过Alcatraz来下载CocoaPods这个插件,就可以在Xcode中随意下载各种三方框架了
下面我来介绍CocoaPods的使用
1.点击修改podfile文件
2.修改PodFile文件--此时我们需要AFNetworking、SDWebImage、SVProgressHUD这三个框架
platform :ios, "9.0"pod "AFNetworking"pod "SDWebImage"pod "SVProgressHUD"
然后点击Install pods ,如果没有问题就开始下载了
以后每次打开项目开启.xcworkspace文件
这时三方的框架就已经存在我们的项目当中了,我们可以随时调用它们的头文件了
准备工作做好了之后,我们开始继续开发“推荐关注这个模块”
首先新建一个继承UIViewController的类,选上xib
首先先把需要的三方头文件加上
#import <AFNetworking.h>#import <SVProgressHUD.h>
self.title = @"推荐关注";self.view.backgroundColor = YYGlobalBg;<div></div>YYGlobalBG是在PCH定义的:
#define YYGlobalBg YYRGBColor(229, 229, 229)
然后设置加载进度动画
// 显示指示器 [SVProgressHUD showWithMaskType:SVProgressHUDMaskTypeBlack];
下面开始涉及网络请求:
1.先定义一个可变的字典
NSMutableDictionary *params = [NSMutableDictionary dictionary];
2.然后往字典里面放入要传的参数(这两段参数是在官方API文档中查找到的)
params[@"a"] = @"category";params[@"c"] = @"subscribe";
3.然后我们用GET方法网络请求就可以,获取到列表的参数
[[AFHTTPSessionManager manager] GET:@"http://api.budejie.com/api/api_open.php" parameters:params progress:^(NSProgress * _Nonnull downloadProgress) { } success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) { // 隐藏指示器 [SVProgressHUD dismiss]; YYLog(@"%@",responseObject); } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { // 显示失败信息 [SVProgressHUD showErrorWithStatus:@"加载推荐信息失败!"]; }];
这个时候返回的中文log参数我们可能看不懂,我分享一个Fundation分类就可以从log中看到中文了
#import <Foundation/Foundation.h>@implementation NSDictionary (Log)- (NSString *)descriptionWithLocale:(id)locale{ NSMutableString *string = [NSMutableString string]; // 开头有个{ [string appendString:@"{\n"]; // 遍历所有的键值对 [self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { [string appendFormat:@"\t%@", key]; [string appendString:@" : "]; [string appendFormat:@"%@,\n", obj]; }]; // 结尾有个} [string appendString:@"}"]; // 查找最后一个逗号 NSRange range = [string rangeOfString:@"," options:NSBackwardsSearch]; if (range.location != NSNotFound) [string deleteCharactersInRange:range]; return string;}@end@implementation NSArray (Log)- (NSString *)descriptionWithLocale:(id)locale{ NSMutableString *string = [NSMutableString string]; // 开头有个[ [string appendString:@"[\n"]; // 遍历所有的元素 [self enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { [string appendFormat:@"\t%@,\n", obj]; }]; // 结尾有个] [string appendString:@"]"]; // 查找最后一个逗号 NSRange range = [string rangeOfString:@"," options:NSBackwardsSearch]; if (range.location != NSNotFound) [string deleteCharactersInRange:range]; return string;}@end
0 0
- 百思学习笔记12-网络请求到推荐关注
- 百思学习笔记13-推荐关注左侧
- 百思学习笔记11-关注模块
- IOS学习笔记,网络请求,json解析
- 【cocos2dx学习笔记】HttpClient网络请求
- swift2.0学习笔记之网络请求
- Android学习笔记—网络请求
- Android 网络请求框架Volley学习笔记
- phonegap笔记-网络请求
- 百思不得其姐关注模块的推荐关注中 右侧TableView刷新细节
- ios 网络请求 笔记
- iOS 网络请求 笔记
- JSP网络编程-请求和响应-HttpServletRequest-HttpServletResponse-学习笔记
- IOS学习笔记(16)网络请求,json解析
- IOS学习笔记(16)网络请求,json解析
- swift 学习笔记1 -- json解析、网络请求、[myClass class]
- Swift学习笔记(3)iOS 9 中的网络请求
- React-Native 学习笔记十七(网络请求)
- 1006. 换个格式输出整数
- MarkdownPad 2 在win10系统下报错html渲染错误
- 1019. 数字黑洞 (20)
- centos7引导项修复
- 树的最大独立集
- 百思学习笔记12-网络请求到推荐关注
- 王学岗高级控件滚动视图(一)
- POJ 3268 牛的最长来回时间
- android日常开发60条经验
- 浏览器加载和渲染HTML的顺序
- java学习心得——代码重铸
- C语言学习记录(一):关键的关键字
- 一年前的噩梦–记十年职业生涯最黑暗的项目经历
- markdown学习