当前位置: > 论文中心 > 计算机论文 >

基于iOS平台的漫画阅读手机客户端的设计与实现(2)

时间:2014-10-20 20:06 点击:
同步Get请求虽然阻塞线程并且安全性不高但操作简单,可以在列表展示模块使用同步Get请求,可以大大减少工作量,缩短程序开发周期。在数据下载模块则需要使用异步Get请求,可以实现多线程下载,不会阻塞线程,在下载
  同步Get请求虽然阻塞线程并且安全性不高但操作简单,可以在列表展示模块使用同步Get请求,可以大大减少工作量,缩短程序开发周期。在数据下载模块则需要使用异步Get请求,可以实现多线程下载,不会阻塞线程,在下载的同时可以进行用户交互。
 
  (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) {
 
  //判断漫画列表视图是否已创建,防止多次创建
 
  if (IOS.comicsListShowViewController == nil) {
 
  [ IOS.comicsListShowViewController=[[HIComicsListShow-] ViewController alloc] init];
 
  }

   论文榜(www.zglwb.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导代理,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


栏目列表
联系方式
推荐内容
 
QQ在线咨询
投稿辅导热线:
189-6119-6312
微信号咨询:
18961196312