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

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

时间:2014-10-20 20:06 点击:
摘 要: 该设计是在Mac系统上,通过Xcode5开发工具,使用Objective-C语言进行漫画阅读客户端的开发。首先,根据需求分析做出符合用户使用习惯的交互界面,根据服务器接口请求并解析出所有漫画信息,将获取到的漫画信息通过自定义表视图展示给用户;然后,给
  摘 要: 该设计是在Mac系统上,通过Xcode5开发工具,使用Objective-C语言进行漫画阅读客户端的开发。首先,根据需求分析做出符合用户使用习惯的交互界面,根据服务器接口请求并解析出所有漫画信息,将获取到的漫画信息通过自定义表视图展示给用户;然后,给每一个漫画添加点击事件,当用户点击某一漫画时,可以跳转到漫画详情页,漫画详情页涵盖了漫画的所有信息;在详情页中添加评论、阅读、收藏、评星等UIButton控件,并添加点击事件,当用户点击某一按钮时,可以跳转到对应视图;最后,待所有功能都完成后,进行数据测试、Bug修复以及界面美化。
 
  关键字: iOS; 客户端; Objective-C; Xcode5; 漫画阅读
 
  中图分类号: TN919.8-34; TP311 文献标识码: A 文章编号: 1004-373X(2014)19-0121-04
 
  Design and implementation of comic reading mobile client based on iOS platform
 
  WANG Yan-jun
 
  (School of Information Engineering, Xi’an Eurasia University, Xi'an 710065, China)
 
  Abstract: The comic reading client was developed on a Mac system by using Xcode5 development tool and Objective-C language. The interaction interface conforming to user operation habits is made according to the demand analysis, and then information of all the comics is parsed out according the request of server interface and is presented to the user through custom table views. After that, a click event is added for every comic. When a user clicks on a comic, the detail page of the comic will jump to him. The detail page covers all the information of a comic. In the detail page, if the click event and UIButton controls for comments, reading, collection, rating, etc. are added, when the user clicks a button, a corresponding view will jump to him. When all the functions are completed, data testing, Bug fix and interface beautifying are performed.
 
  Keywords: iOS; client; Objective-C; Xcode5; comic reading
 
  0 引 言
 
  手机阅读作为一种媒体形式,近年来的发展呈现良好态势。从2003年初开始,手机已具备支持漫画阅读的条件,但由于当时技术水平的限制,手机缺乏足够大的可视彩屏以供用户进行良好的漫画阅读体验,加之网速过慢、内存不足、下载费用过高等,手机用户逐渐对此失去了兴趣。近年来,随着智能手机的发展,特别是各大运营商对3G/4G业务的大力推广,使用手机进行漫画阅读又受到了广大用户的关注,并且正日益成为人们娱乐消遣的新方式。可以说,手机漫画阅读的出现代表了手机技术的发展以及移动互联网时代的到来。
 
  本文运用iOS客户端的开发技术,通过对服务器数据的请求与解析,实现漫画推荐、分类、最新入库漫画等列表的展示,并且实现对漫画的搜索、评论、阅读、收藏等功能。
 
  1 客户端功能需求分析及定义
 
  对于功能方面,该客户端软件在系统功能方面主要包括以下几点:
 
  (1) 错误信息提示,比如进入客户端时或者在阅读过程中出现断网,则在下次加载数据时会出现弹出框提示网络连接异常,保证软件在运行过程中不会出现异常。
 
  (2) 服务器数据请求与解析,即服务器和客户端之间的通信必须通畅。
 
  (3) 内存的优化管理是软件开发过程中较为重要的一个环节,内存泄露会导致数据丢失,影响用户体验。
 
  该客户端具有的基本功能如下:漫画列表展示,漫画搜索,漫画收藏,漫画阅读,书签功能,用户评论。
 
  (1) 漫画列表展示。漫画列表展示主要包括漫画推荐、漫画分类、最新入库、漫画分集。视图窗口主体内容构成:漫画推荐页显示漫画图片、漫画名、作者名、点击量、评分、分类、漫画内容概述,详情页展示漫画分集列表以及漫画基本信息,最新入库视图页展示最新入库漫画以及漫画基本信息。
 
  (2) 漫画搜索。漫画搜索页面的屏幕上方显示搜索框,可以在搜索框中输入汉字或拼音,系统自动将输入内容转换为拼音。当用户输入漫画名或作者名时,漫画列表展示搜索到的漫画信息;当用户输入的内容与漫画信息不匹配时则漫画列表不显示。
 
  (3) 漫画收藏。在漫画详情页中创建漫画收藏按钮,用户可以收藏喜欢自己的漫画,点击收藏后漫画信息将添加入漫画收藏页面,并且漫画收藏按钮显示已收藏状态,在漫画收藏页面展示收藏的漫画信息。 
 
  (4) 漫画阅读。在漫画详情页中创建分集按钮以及开始阅读按钮,用户可以根据需求选择需要阅读的章节,点击开始阅读后,再通过服务器接口获取漫画内容,在漫画阅读页展示漫画内容。阅读到中途退出后,开始阅读按钮显示上次阅读的章节。
 
  (5) 书签功能。在漫画阅读页添加书签按钮,当读到中途用户想停止阅读退出视图窗口时,用户可以点击书签按钮进行当前位置的存档,在用户下次点击阅读时,可以跳转到上次存档的位置继续阅读。
 
  (6) 用户评论。在漫画评论页添加评论按钮,点击评论按钮可以跳转到用户评论页面,用户可以对漫画进行评论和打分,将评论和打分后的信息上传至服务器,进入评论页面时将显示该用户刚评论的信息。
 
  2 系统模块设计
 
  程序的整体功能模块包含从服务器请求和解析数据、功能选择、提交数据到服务器等。其中,使用同步请求方式进行数据请求,XML解析使用的是GDataXML解析,字符串解析使用的是SBJson解析。具体的模块设计如图1所示。
 
  3 界面的绘制
 
  界面绘制较为简单,只需根据当前需求分析对每个页面进行绘制。首先在工程中创建一个视图控制器,并为其生成nib文件,然后将绘制界面所用到的控件拖入合适位置,形成插座控件,等待网络请求完毕时加载数据在这些控件上。若没有生成nib文件,则可以使用代码手动创建实现控件的生成。绘制流程图如图2所示。
 
  4 控件的选择
 
  UILabel用来显示文字,可以设置字体、字号、颜色等。
 
  UIImageView用来显示图片,可以设置图片大小、位置等。
 
  UITextView用来显示多行文本内容,该控件可以对文本内容进行编辑,若文本内容超出文本框范围则可以上下滚动浏览。
 
  UIButton在iPhone上主要就是按钮,可以响应用户操作事件,它可以设置背景图片、文字等相关属性。
 
  UITableView是一个一维的表视图,是上下滑动的条目清单,可进行分区,每个分区展示不同类型的数据,每个表格里的指定行(cell)中的数据由他所在分区(section)和所在分区的行(row)来决定。
 
  UIScrollView是一个滚动视图控件,当视图中无法显示多于一个屏幕尺寸的内容时可以使用该控件, contentsize属性可以设置滚轴内容的宽高。
 
  5 数据的请求
 
  数据请求总共有四种,分别是同步请求、异步请求、Get请求、Post请求。其中同步请求一旦发生,北大核心期刊目录2014应用程序会停止与用户进行交互,等待数据返回完成,才可以进行之后的操作。异步请求解决了同步请求中线程阻塞的问题,当发生异步请求之后,程序会建立新的线程进行操作,对于用户交互丝毫不会受到影响,用户依然可以对所有界面元素进行操作。Get请求虽然操作简单,但安全性不高,它的请求参数都显示在访问路径上,外界可以直观的看到。Post请求操作相对复杂,不过安全性较高,它是将所有的请求参数放在一个body里面,从而使外界不容易捕获到这些信息。

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


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