基于iOS平台的漫画阅读手机客户端的设计与实现(2)
(1) 同步Get请求的建立需要以下三个步骤:
第一步,创建URL,代码如下:
NSURL*url=[NSURLURLWithString:@"http://cmhtech.ecartoon.net/tuijian.php/book_index.php?id=2"];
第二步,通过URL创建网络请求,代码如下:
NSURLRequest*request=[[NSURLRequestalloc]initWithURL:urlcachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10];
第三步,连接服务器,代码如下:
NSData*received=[NSURLConnectionsendSynchronousRequest:requestreturningResponse:nil error:nil];
NSString*str=[[NSStringalloc]initWithData:receivedencoding:NSUTF8StringEncoding];
(2) 异步Get请求的建立需要以下三个步骤:
第一步,创建URL,代码如下:
NSURL*url=[NSURLURLWithString:@"http://cmhtech.ecartoon.net/tuijian.php/book_index.php?id=2"];
第二步,通过URL创建网络请求,代码如下:
NSURLRequest*request=[[NSURLRequestalloc]initWithURL:urlcachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10];
第三步,连接服务器,代码如下:
NSURLConnection*connection = [[NSURLConnection alloc]initWithRequest:request delegate:self];
异步请求需要实现的代理方法如下:
① 接收到服务器回应的时候调用
-(void)connection: (NSURLConnection*) connectiondidReceiveResponse: (NSURLResponse *) response {}
② 服务器传输数据时调用,此方法执行若干次。
-(void)connection: (NSURLConnection *) connection didReceiveData: (NSData*) data {}
③ 数据传完之后调用此方法
-(void)connectionDidFinishLoading: (NSURLConnection *) connection {}
④ 网络请求失败时会进入此方法
-(void)connection:(NSURLConnection*)connectiondidReceiveResponse: NSURLResponse *) response {}
6 网络的判断
使用网络判断之前需导入第三方类库Reachability.h和Reachability.m,并引入SystemConfiguration框架。
在Reachability类中有三种枚举型变量用来判断网络状态:
Reachability*reachability = [Reachability reachabilityWithHostName: @"www.baidu.com" ];
switch([reachability currentReachabilityStatus]) {
case NotReachable:
//判断是否有网络
isExistenceNetwork = YES;
break;
case ReachableViaWWAN
//判断是否是2G/3G网络
isExistenceNetwork = NO;
break;
case ReachableViaWiFi:
//判断是否是WiFi连接
isExistenceNetwork = NO;
break;}
7 客户端界面的实现
漫画阅读客户端界面是应用程序与用户互动交流的平台。iOS视图控制器提供的nib文件可以方便地对界面进行绘制,其UI控件都可以直接拖到nib文件中进行创建,开发人员可以直观地看到界面绘制的效果。
(1) 漫画推荐首页
漫画推荐首页使用自定义表视图(UITableView)进行列表展示,自定义Cell中使用UIImageView控件显示漫画图片,使用UILabel控件显示漫画基本信息。绘制效果如图3所示。
(2) 漫画列表展示
漫画列表展示使用自定义表视图(UITableView)进行展示,自定义Cell中使用UIImageView控件显示漫画图片,使用UILabel控件显示漫画基本信息。实现代码如下:
//判断点击的按钮
if (sender == self.segmentButton1) {
//判断漫画列表视图是否已创建,防止多次创建
(www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/
CSSCI核心/医学投稿辅导/职称投稿辅导。
投稿邮箱:fabiaoba365@126.com
在线咨询:
275774677、
1003180928
在线咨询:
610071587、
1003160816
联系电话:13775259981