ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:424.68KB ,
资源ID:4679045      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4679045.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于iOS系统的好生活手机APP设计.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于iOS系统的好生活手机APP设计.docx

1、基于iOS系统的好生活手机APP设计 毕 业 论 文(设计)课 题 基于IOS平台好生活APP的设计与开发 学生姓名 院 部 电气工程学院 专业班级 指导教师 二 一 六年 六 月3.2 MVC设计模式 - 5 -基于iOS系统的好生活手机APP设计摘 要随着智能手机的不断更新和发展,逐渐替代了传统的手机,而人们对智能手机的应用的需求也越来越广泛,已经不在是以前打电话、发短信的简单要求,手机游戏、手机导航、手机购物等应用已经非常流行了。同时,伴随着iPhone进入中国市场,Objective-C和Swift逐渐成为开发者最常用的语言,本设计利用苹果提供的语言进行苹果手机Application的

2、开发,该软件是公司向员工发放福利,利用福利点数进行购物的一款app,它具有界面美观,操作简单,实用性广的优点。本论文设计的实现,关键的开发程序是用MVC设计模式、代理模式以及单利模式的设计。对于此设计中各个界面的设计和布局,是解析相应的网络请求数据并用不同的控件展示的,而面对不同版本的iPhone,可以利用代码或者官方提供的Autolayout设置约束和Sizeclass设置屏幕尺寸等对其进行适配。本设计利用自定义可以左右滑动的tabbar,将不同页面放置到tabbar上面,实现系统不能左右滑动的效果,不同页面的展示通过自定义的单元格显示在UITableView上。本设计中的网络请求都遵循Ht

3、tp协议,网络请求的实现是利用第三方的类库AFNetworking,通过创建AFNetworking中类的对象,向服务器发送异步请求,请求解析得到的数据,将数据展示在页面上。本文设计的app应用非常广泛,给人们的日常生活带来了便利,通过对本设计的开发,实现了许多app共有的功能,加深对项目开发的理解和认识。关键字:iOS ;Objective-C ;好生活App;iphoneGood life based on iOS mobile APP designAbstract along with the continuous renewal of smart phones and the deve

4、lopment, gradually replaced the old mobile phone, and peoples demand for the application of smart phones is becoming more and more widely, is no longer simple requirements before making phone calls, text messaging, mobile games, mobile phones navigation, shopping and so on applications has been very

5、 popular. At the same time, along with the iPhone to enter the Chinese market, Objective - C and Swift gradually become one of the most common language of developers, this design language from apple for the apple mobile phone Application development, the software is to give benefits to employees, th

6、e company the use of welfare points for shopping app, it has beautiful interface, easy operation, the advantages of wide practicability. This paper design the implementation of the key development program is to use the MVC design pattern, the pattern design of the proxy pattern and simple interest.

7、For the design of the interface design and layout, to parse the corresponding network request data using different controls display, with a different version of the iPhone, can use the code or official Autolayout set constraints and Sizeclass Settings screen size to fit. This design USES the custom

8、can slide around tabbar, place different pages to tabbar, implement system cannot control the effect of the sliding, different pages shows through custom cell display on the UITableView. Network requests are followed in the design of the Http protocol, the realization of the network request is to us

9、e third-party libraries AFNetworking, by creating a class of object in AFNetworking, send an asynchronous request to the server, the request parse the data, the data display on the page. This paper designed an app is very broad, brings convenience to Peoples Daily life, through the development of th

10、is design, to realize the function, common to most app to deepen the understanding of project development and know.keyword:iOS ;Objective-C;GoodLife App;iphone第1章 绪论1.1选题背景随着社会的发展,时代的进步,智能手机为人们的生活带来了许多的便利之处,而传统的键盘式手机逐渐被智能手机所取代,智能手机像个人电脑一样,它拥有的操作系统是单独的,拥有的运行空间同样是单独的,因为它可以自定义的安装第三方软件,所以智能手机相对与老式手机来说有着

11、强大的扩展功能,用户可以自行的安装或卸载其需要的app。随着智能手机越来越广泛的使用,用户越发依赖手机软件,而网络购物也越来越流行,因此像购物类的这种app 的市场需求和发展前景也越来越焕发。好生活app充分利用市场的需求,将手机app和网络购物合为一体,让人们更加方便的利用手机进行购物,手机购物也成为了人们主要购买商品的途径之一,有了好生活这款app就不需要去实体店铺,也不用坐在电脑前,一部手机就能完成在电脑上想要完成的操作,中国的未来的手机购物将有一个快速的发展期,用户可以通过手机查询商品信息并在线支付购买商品。相关的数据调查说明了,大约46.00%的手机玩家以前有过用手机进行购物,21.

12、50%的手机玩家声明想要尝试在手机上进行购买商品,此调查显示手机购物在我国拥有十分广阔的前景。随着苹果手机在中国的日益发展,iOS一系列的技术也越来越被开发者应用,所以编写iOS操作系统应用程序和Mac OS X操作系统应用程序的Objective-C语言也被开发者熟知及应用。OC语言是C语言的一个超集,在C语言的基础上加了面向对象的特性,OC与Java语言相同,都是单继承,这一点与C+语言不同,OC不支持命名空间机制,取而代之的是在类名之前添加前缀,以此来区分,Objective-C是动态定型,所以它的类库比C+要容易操作,OC语言在运行的时侯能够允许通过字符串名字来对方法和类进行交互,并且

13、能够动态连接和添加类,这就是OC 语言的多态特性。综上所述,Objective-C有着非常巨大的空间进行发展。iOS里面只支持MAC和ARC的开发,ARC是Automatic Reference Counting的简称,我们也可叫它自动引用计数,是在iOS5.0之后推出的内存管理的新特性。本质上还是使用引用计数来管理对象,只是程序在编译时,会在合适的地方添加release或者autorelease,不需要手动向对象发送release或者autorelease方法,ARC比GC性能好。1.2研究的意义手机购物在当今社会已是非常普遍了,大多数人都已了解并熟练的利用手机在网上进行购物了,此款app是

14、利用公司给员工发放的点数进行购买商品的,和Q币的功能类似,用户可以利用点数换取其想要获得的商品或其他种类的消费。本人从去年开始接触OC语言,在经过一段时间的学习后,对iOS的开发有一定的了解和认识,此项目便是在公司实习期间所接触到的,项目具有一定的复杂性,用到了不同的设计模式和第三方的类库,通过对项目的开发,巩固了自己iOS水平和独立解决问题的能力。第2章 总体开发环境2.1 开发环境与开发工具2.1.1 Objective-C 语言概述Objective-C是对C语言的扩充,而且在此基础上增加了面向对象,它是由Brad Cox在1980年代初发明的,大部分是用在与Mac OS X和GNUst

15、ep这两个使用OpenStep标准的系统,不过在NeXTSTEP和OpenStep中它是更基本的语言,Objective-C不仅可以在上述的系统中使用,而且能够在其它的系统上进行编写和编译,例如:GCC、Clang等。目前,Objective-C的主要用途则是编写iOS操作系统应用程序和Mac OS X操作系统应用程序,所以说它是一种实用的开发语言。Objective-C具有单继承的语言特点,不能进行多重继承,cocoa中NSObject是所有类的父类,多重继承虽然不能在此实现,不过可以用protocl委托代理来进行实现,面向对象语言大部分都是单继承的,如java等。OC语言在C的基础之上多了

16、其自己的特性,即封装、多态、继承,OC语言不支持命名空间机制,不过它要在类名之前添加上前缀,来区分不同的类之间的不同,不支持运算符重载,而它支持C语言、OC与C+可以混编。和其他的所有面向对象语言类似,Objective-C也是用类来封装数据,对数据进行一系列的操作,对象就是类的实例化,它包含了类声明的实例变量将自己的内存地址复制,以及类成员的指针,NSObject是顶级父类,即所有的类都是NSObject的字类。 OC中的类可以声明两种类型的方法,即加号方法(类方法)和减号方法(实例方法),加号方法是由类进行调用的,而减号方法不同,必须创建类的对象,由对象调用减号方法,这两种类型的方法都可携

17、带参数和返回值,方法的声明格式是:或(返回值类型)方法名:(参数类型)参数名。如果方法中无参数,可以省略方法名后的冒号。2.1.2 Xcode开发工具Xcode是一款用来编程的软件,是由苹果公司独立开发的,它向开发人员提供了需要开发所涉及的环境,它提供了项目管理、代码编辑、编译可执行文件、源代码调试、代码库管理和性能优化等的工具,Xcode不是唯一使用的开发工具,目前开发所用到的是Xcode6.3版本。首先要关注的是Xcode应用程序,它提供了开发iPhone应用项目的全部代码的建立和使用、编译代码为可执行文件、运行调试OC或者swift代码,还包括在iPhone模拟器上运行或者是直接在设备上

18、运行等。开发者可以在Xcode中创建新项目,开始新的iPhone应用程序。一个项目控制着应用程序全部的信息,包含源代码、编译设置和把所有文件整合到一起的编译规则。Xcode项目的中心思想就是是项目的各个不同的窗口,开发者可以通过该窗口迅速的找到应用程序的全部有用的元素。组和文件列表管理项目文件,包含了源代码文件和编译结束的目标文件。工具栏提供了常用的工具和命令,详细资料面板用来设置项目的工作区域,项目窗口的其他部分可以提供更多的项目信息。Xcode中有一些常用快捷键,方便开发者对程序进行操作,如commandr:程序运行 commandb:程序编译 commandc:复制commandv:粘贴

19、 command方向键:光标快速移动 commandshiftk:清理等。 2.1.3 开发环境(1)开发环境Mac OS X Version 10.9.2(2)运行环境iPhone模拟器或者真机调试2.2内存管理 从iOS5.0之后,苹果官方推出了ARC技术,即是内存管理的新特性,ARC是Automatic Reference Counting的简称,自动引用计数,在此之前,苹果一直用的是MRC管理内存,即手动管理引用计数,遵循“谁创建,谁释放,谁引用,谁管理”的规则,当创建对象时,我们会调用alloc或new方法,或者向对象发送copy,retian消息时,会使对象的引用计数加一,我们就有

20、义务向它发送release或者autorelease消息,使其引用计数减一,当对象的引用计数为零时,系统就会自动释放该对象。 ARC则不需要我们手动的向对象发送release或者autorelease消息,它是编译时特性,即程序在编译的时候会在合适的地方为我们自动添加release或者autorelease,本质上还是用引用计数来管理内存,ARC使代码简洁,防止内存泄漏,提高零效率。第3章 IOS技术与app功能框架3.1不同版本iphone适配分析在实际开发的过程中,首先遇到的问题就是屏幕适配,可以说做好屏幕适配是开发的基础,提到适配,第一要了解的就是不同版本iphone的屏幕大小,如图3-

21、1所示:图3-1 不同版本iphone的分辨率我们根据屏幕的不同及分辨率的不同对iphone进行适配。苹果官方非常重视适配问题,适配是开发程序的基本条件,官方推荐采用autolayout添加约束和sizeclass调节屏幕尺寸对屏幕进行适配,即是抛弃以前的用坐标写死视图的位置和大小,只是对控件间的相对距离进行约束,让控件自动适配屏幕。下面用一个简单易懂的例子来说明autolayout的部分使用技巧和方法,等宽子视图的布局,所谓等宽子视图,说的简单了也就是对一个有多个子视图的父视图来说,不管父视图的宽度是如何的变化,所有子视图的宽度都是相等的,如图3-2所示:图3-2适配效果图分析一下这种情况的

22、视图约束的规则,4个不同颜色的子视图具有相同的宽度,子视图之间的距离固定为10,最左边和最右边距屏幕边缘的距离为10,子视图的高度随着屏幕的比例进行变大或变小,接下来就是将图中的约束全部实现,其中最关键的约束是等宽约束,子试图之间的固定距离的约束。对于所有的约束条件如图3-3所示;图3-3autolaryout约束条件在实际的开发过程中,会遇到各种各样的屏幕适配,这就需要我们对aotolayout非常了解,对约束条件非常清晰,autolayout的出现让苹果适配问题变得简单,不在需要纯代码适配,给发开者节省了时间,增加了效率,从图中可以看出各个约束的效果和不同。3.2 MVC设计模式MVC是一

23、种架构设计,M表示数据模型(model),V表示视图(view),C表示控制器(controller)。数据模型:负责存储、定义、操作数据,例如,模型对象可能是表示展示视图中的一条数据,用户在视图层中所进行的创建或者修改数据的操作,通过控制器对象传达出去。模型对象在改变的时侯,就会通知试图控制器的对象,控制器对象发送相应的消息来更新我们需要改变的试图对象。视图是用来展示数据给用户,和用户进行操作交互,视图通过显示的形式,把信息转达给用户。不同视图显示着不同的内容,表达了模型的数据变化和状态变化的消息。每个视图对象都会有一个更新的作用,它可被变化-传播机制所激活。当让试图对象更新时,视图获取到模

24、型带来的数据值,并用这些数据来更新显示出来。控制器是M与V的协调者,控制器获取数据,将数据交给视图去展示。MVC的优点表现在以下几个方面:(1) 能够将一个模型在运行时一起创建和利用许多个不同的视图。变化-传播机制能够保证一切有关的视图很迅速的得到模型数据变化,然后将全部关联的视图和控制器之间行为和数据同步。(2) 视图与控制器的可接插性,可以变换视图和控制器不同的对象,而且可以根据不同的要求多态的打开或关闭,有时候还可以在运行的中间进行对象替换更新。(3) 模型的可移植性。因为模型和试图是相对独立的,所以能够将一个模型单独地放到其它的平台进行工作。不过要做的是在新平台上对视图和控制器进行新的

25、修改。3.3 好生活的功能框架3.3.1 引导页 引导页向用户展示了好生活公司的一些图片,让员工对好生活公司有更深的了解,让员工对此app一目了然,好生活是企业给员工的福利,让员工喜欢上此app。主要功能框架如图3-4所示:图3-4功能框架3.3.2 登陆界面 通过点击引导页的最后一个图片进入到登陆界面,在此界面用户可以输入用户名和密码进行登陆,当密码忘记时可以点击找回密码进行找回操作,也可注册用户,本界面和QQ的登陆界面具有类似功能。3.3.3 首页 用户登陆成功,会跳到此界面,用户在此界面能看到一些展示的不同种类的商品,具体包括广告、分类、福利几个模块。广告主要是展示一些广告图片,减价商品

26、,最新商品等,可以自动滑动,用户也可手动滑动,通过点击不同的图片可以跳转到下一个界面,下一界面是对此图片的详细信息的描述。 在广告下面紧接着就是分类模块,在此模块中主要有八种不同的分类,运动健身、文艺欣赏、健康体检、休假疗养、集中采购、业余培训、户外运动、生日慰问。通过点击不同的分类,找到用户需要的种类和商品,这种设计是非常具有人性化的,可以根据不同的用户展示不同的数据。 福利模块分为最新和最热两部分,但是不同的两部分都是以同一种格式显示的,向用户展示了商品图片,商品名称,商品价格和商品购买的数量,通过展示的部分,让用户胸有成竹,一目了然。3.3.4 个人界面 该页面是个人信息界面,在此页面中

27、可以看到用户名、真实姓名、头像、我的订单、福利账单、用户地址、密码管理等功能。 通过点击个人信息可以设置头像,头像可以根据相册选择,也可拍照上传,我的订单就是历史订单,可以看到以前购买商品的历史,密码管理能够实现更改密码的功能,跟平常所见到的更改密码功能一致,意见反馈就是提交自己的意见,给公司提供建议的功能。最新消息可以查看消息,点击这个按钮是通过加载网页的形势展示数据的 。3.3.5 设置界面 设置界面相对其他的界面就显得比较简单了,该界面可以检查更新,退出登陆以及设置在2G/3G/4G下能否显示图片的功能,点击此按钮,可以控制是否加载图片,该功能是对于用流量的用户量身定做的,通过此按钮的开

28、关,控制流量的多少,非常人性化的设计。退出登陆按钮就是退出登陆,回到登陆界面,通这个按钮可以切换不同的用户。第4章 好生活客户端设计与实现4.1 项目概述项目名称:好生活app项目需求:通过手机客户端实现网上在线购物的功能,可以在手机上进行物品的选择、浏览、支付等操作。项目优化:加强用户体验,不同屏幕手机进行适配,使外观整体,减少资源的消耗,防止内存泄漏,加强内存的管理,滚动视图滚动显示更加流畅、清晰、自然。4.2 好生活详细设计4.2.1 引导页界面 引导页是放置不同的图片到UISsrollView上面,滑动到最后一张图片,通过touch事件处理,跳转到登陆页面,其中主要代码为:_scrol

29、lView=UIScrollView allocinitWithFrame:UIScreen mainScreen.bounds; for (int i=0; i4; i+) LaunchImageView *imageView=LaunchImageView allocinitWithFrame:CGRectMake(VIEWWIDTH*i, 0, VIEWWIDTH, VIEWHEIGHT); imageView.image=UIImage imageNamed:NSString stringWithFormat:1-%d.jpg,i+1; imageView.tag=i+1; image

30、View.delegate=self; _scrollView addSubview:imageView _scrollView.contentSize = CGSizeMake(VIEWWIDTH*4, 0); _scrollView.showsHorizontalScrollIndicator = NO; _scrollView.pagingEnabled = YES; _scrollView.bounces = NO;self.view addSubview:_scrollView;引导页图如图4-1所示:图4-1 引导页图4.2.2 登陆页面 该界面的登陆图如图4-2所示,登陆页面则是

31、由最基本的一些控件组成的,其中分别有UITextField,UIButton,UILabel等控件,通过获取UITextField上的用户名和密码,在UIButton的点击事件里面进行一系列的判断和发送网络请求,通过AFNetworking这个第三方的库,向服务器发送请求,并得到服务器返回的数据,将数据进行解析,判断是否登陆成功。如果登录成功就会跳转到下一个界面,反之,会弹出一个警告框告诉用户登录失败的原因。此界面是很容易实现的,复杂的部分主要是对返回数据的解析和判断,下面是对登陆判断的主要代码: self.view endEditing:YES; NSString *nameString=_

32、tfUserName.text stringByReplacingOccurrencesOfString: withString:; NSString *pwdString=_tfUserPwd.text stringByReplacingOccurrencesOfString: withString:; if (nameString=nil|nameString.length6|pwdString=nil|pwdString.length=0) NSLog(请填写正确的用户名或密码); else sender setTitle:登录中. forState:UIControlStateNormal; HttpEngine shareHttpEngineloginWi

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1