首页 毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现

毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现

举报
开通vip

毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现 河南科技学院 2015届本科毕业设计 基于IOS开发的装修家居APP的设计与实现 学生姓名: 所在系别: 信 息 工 程 所学专业: 信 息 工 程 导师姓名: 10 完成时间: 2015 - 5 – 基于IOS开发的装修家居APP的设计与实现 摘要 随着科技的发展,移动智能终端人们的日常生活中扮演着越来越重要的角色。基于iOS系统的iPhone手机因其独特的设计和极佳的体验深受用户欢迎。作为当前最流行的操作平台,自然也存在着大量的应用...

毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现
毕业 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 (论文)-基于IOS开发的装修家居APP的设计与实现 河南科技学院 2015届本科毕业设计 基于IOS开发的装修家居APP的设计与实现 学生姓名: 所在系别: 信 息 工 程 所学专业: 信 息 工 程 导师姓名: 10 完成时间: 2015 - 5 – 基于IOS开发的装修家居APP的设计与实现 摘要 随着科技的发展,移动智能终端人们的日常生活中扮演着越来越重要的角色。基于iOS系统的iPhone手机因其独特的设计和极佳的体验深受用户欢迎。作为当前最流行的操作平台,自然也存在着大量的应用服务需求。本课题是为一家装修公司设计的一款帮助人们可以随心所欲选择家居装修样式的移动应用。该APP以Object-C语言编写,以Xcode为开发工具实现的。主要有五大界面,首页,分类图片,灵感,关注及设置界面。首页展示了设计师设计的当今流行的一些装修样板,分类界面以空间、风格、局部三种分类方式向用户详细介绍各种各样的装修方法,灵感界面就是用户记录自己的装修方法,以备以后装修时使用的界面,关注界面则是自己关注的设计师的最新动态,设置界面可以清空缓存,意见反馈,及APP介绍。精致优秀的设计风格,有多样化的选择,使用户可以更加赏心悦目地体验本软件的服务。 关键词,Objective_c、HTTP、MySQL、家居 DESIGN AND IMPLEMENTATION OF INFORMATION MANAGEMENT SYSTEMS GRADUATES Abstract With the development of science and technology, mobile intelligent terminal plays an increasingly important role in daily life.. IPhone mobile phone based on the iOS system because of its unique design and excellent experience by users. As the most popular operating platform, there is also a lot of natural application service needs. This topic is for a decoration company design of a help people can choose home decoration style mobile application. The APP is written in Object-C language, and implemented by Xcode as the development tool.. There are five major interfaces: home, classification pictures, inspiration, attention and set the interface. Home page shows the designer of today's popular some decoration model; interface classification to space, style, local three classification to users with the various decoration method; interface inspired is users to record their own decoration method, to preparation after the renovation of the use of interface; interface is designers concern themselves with the latest developments; setting interface can empty the cache, feedback, and app. Exquisite and excellent design style, a variety of choices, users can experience more be good to hear or see the service of this software. Keywords: Objective_c, HTTP, MySQL, Household 目录 1. 绪论.........................................................................................................................................................................1 2. iOS系统、环境以及所用技术介绍 .............................................................................................................3 2.1 iOS系统简介 ...........................................................................................................................................3 2.3 开发环境 ...................................................................................................................................................4 2.4应用程序框架 ...........................................................................................................................................5 2.5 设计模式 ...................................................................................................................................................7 2.6第三方库 ................................................................................................................................................. 10 3. 功能模块的设计 .............................................................................................................................................. 11 3.1首页界面的设计.................................................................................................................................... 11 3.2分类界面.................................................................................................................................................. 12 3.3灵感界面.................................................................................................................................................. 12 3.4关注界面 ................................................................................................................................................. 14 3.5设置界面 ................................................................................................................................................. 14 4. 功能模块的具体实现 .................................................................................................................................... 15 4.1各个界面之间的切换.......................................................................................................................... 16 4.2首页界面的具体实现逻辑及代码 .................................................................................................. 18 4.3 分类界面................................................................................................................................................ 23 4.4 灵感界面................................................................................................................................................ 28 4.5 关注界面................................................................................................................................................ 34 4.6 设置界面................................................................................................................................................ 37 5. 系统测试............................................................................................................................................................ 40 5.1 测试目的................................................................................................................................................ 40 5.2 测试方法................................................................................................................................................ 40 小结 ........................................................................................................................................................................... 42 参考文献 .................................................................................................................................................................. 42 致谢 ........................................................................................................................................................................... 43 1. 绪论 随着IOS的在当今社会流行,人们愈发体验到了其所带来的科技魅力,给我们的生活带来了越来越多的帮助,让我们的生活更加的简单。本课题研究的是设计一款APP,人们通过这个手机APP就能找到自己理想的家居装修方法,让自己的居住环境更加的舒适。 如今的移动应用开发产业让人眼花缭乱,主要的移动平台有,IOS、Android、Nokia Symbian、blackberry、Java ME、windows phone、mobile web。Android以其开放性,多任务,大功能。画面流畅,硬件设备优良多样等各种优点,占只能机一大部分,然而它也存在着明显的不足,如,兼容性差,各种机型的配置不一样,以至于开发的时候出现各种版本。有些产品华而不实,用户体验差。Symbian主要基于C语言的应用开发,支持多线程运行模式,但是开发代码量过大给开发人员造成很大的不便。就目前而言,三大平台,Android、Symbian、blackberry,的市场占有率也在逐渐下降,IOS呈现平稳上升趋势。 (1)APPstore的支付模式成熟。不仅仅是这一模式的创新,更重要的人们用苹果手机只能从苹果商店下载应用,经过长时间的运营,APPstore已经形成完备的支付模式,被大部分用户接受。 (2)IOS是用object-C这门语言开发。从全球的编程语言排行榜来看,虽然object-C只有苹果一家公司使用,但是已经排名已经非常靠前了,可见IOS开发的普及性和欢迎程度,另外,基于C语言,运行效率更高 计算机网络通信技术和Internet在最近几年来飞速发展,基于因特网的手机移动应用逐渐开始成为一种全新的功能需求,并且越来越收到人们的关注。由于移动应用具有简单性,随时随地等诸多优点,人们通过一部手机就可以操控一切, 1 它有着传统计算机无法比拟的优点。而人们也在越来越追求更高的物质生活,因此,开发一个关于装修家居的移动应用就有必要了,你只需要通过一部手机,就可以看见多种多样的装修方式,多样化的选择,让你找到自己心怡的装修方法。并且你还可以将方法分享给你的朋友,让更多的人感受到移动应用,这个APP给人们带来的简便。基于IOS平台的装修软件已经有很多,经过分析,用户第一眼往往是一个软件的外观,一个好看的界面才能让用户以一种爱美之心去尝试,才能进一步了解一个软件的好坏,所以吸引眼球的界面是争取用户的第一步。因此,界面设计工作对应用程序来说非常重要,在界面上吸引了用户,才能进一步让用户体验应用程序中的功能,使用这个软件。因此,开发一种界面美观,用起来舒适,并且能给人们带来巨大作用的软件非常有必要。 房屋装修设计是个系统工程,并非想像的那么简单。一般来说,每个人想法都有所不同,对家居的要求不尽相同。但真正能将自己的想法表达到位的,却少之又少。一个专业的房屋设计师,首先会充分了解装修业主的个性化需求,结合自己的专业知识、生活阅历,将装修业主理想中的家居通过设计图纸表现出来。其次,专业的设计师会利用自己对建材材料的了解,在设计时进行合理搭配,施工时推荐最佳材质。说简单些,就是利用设计元素,突出家居中的某几个亮点即可达到装修最佳效果,而不必堆砌过多的装修材料,可以为装修业主节省许多不必要的花费。第三,专业的设计师可以利用自己所累积的社会资源,为装修业主拿到单个消费者所拿不到材料价格,从而为业主节省许多金钱。 随着苹果产品的不断推陈出新,相应的各类应用开发也越来越火爆。目前,IOS在智能手机应用下载量中占比33%,IOS平板电脑应用下载量占比75%,由此可见,IOS相关应用软件有着庞大的消费众群。而产品的升级换代,新产品的 2 开发,都离不开手机软件开发团队强有力的支持。现在各大企业都在积极扩充研发队伍,像是游戏软件开发的岗位缺口就非常大。其8-10万的年薪,让很多年轻人加入到学习IOS开发的队伍中。 据对在读学习人群统计,目前大部分学员来自应届的大学生。众所周知,现在大学生就业难,薪水低。而学习IOS开发,不但可以掌握最新的技术,还可以找到薪水福利不错的工作,未来也有很大的发挥空间。另一部分人群,则是IOS相关从业人员,随着技术的日新月异,希望能通过短时间集中 培训 焊锡培训资料ppt免费下载焊接培训教程 ppt 下载特设培训下载班长管理培训下载培训时间表下载 ,使技能得到提升,更好的应用到实际工作中。而目前关于装修的App少之又少,而人们又迫切需要这样一款软件,所以这样的软件具有很大的前景。 2. iOS系统、环境以及所用技术介绍 iOS开发是以xcode为开发工具,OC为编程语言开发的,是开发苹果移动设备应用的简称。 2.1 iOS系统简介 iOS是iPad、iPhone、iPod touch和Apple TV的操作系统。是由苹果公司开发的移动操作系统 。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等产品上。iOS与苹果的Mac OS X操作系统一样,它也是以Darwin为基础的,因此属于类Unix的商业操作系统。原本这个系统名为iPhone OS,因为iPad,iPhone,iPod touch都使用iPhone OS,所以2010WWDC大会上宣布改名为iOS。iOS 具有简单的界面、令人惊叹的功能,以及超强的稳定性,已经成为iPhone、iPad 和iPod touch 的强大基础。尽管其他竞争对手一直努力地追赶, iOS 内置的众多技术和功能让设备始终保持着遥遥领先的地位。 3 Objective-C,通常写作ObjC和较少用的Objective C或Obj-C,是扩充C 的面向对象编程语言。Objective-C是非常实际的语言。它是一个用C写成、很小的运行库,只会令应用程序的尺寸增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。Objective-C写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。因此,Objective-C它完全兼容 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 C语言,C++对C语言的兼容仅在于大部分语法上,而在ABI,Applicat ion Binary Interface,上,还需要使用extern "C"这种显式声明来与C函数进行兼容,,而在此基础上增加了面向对象编程语言特性以及Smalltalk消息机制。和C++不同,Objective-C不支持运算子重载(它不支持ad-hoc多型)。亦与C++不同,但和Java相同,Objective-C只容许对象继承一个类别(不设多重继承)。Categories和protocols不但可以提供很多多重继承的好处,而且没有很多缺点,例如额外执行时间过重和二进制不兼容。 2.3 开发环境 (1).Xcode开发工具 我们要掌握一门编程语言的话,都必须使用相应的开发工具进行学习和调试,比如用eclipse学习Java。至于Objective-C,我们可以使用苹果公司提供的开发工具---Xcode (2) Mac OS X 4 Xcode没有Windows版本的,只有Mac版本的,也就是只能跑在Mac OS X系统上。 因此,你要先拥有Mac OS X系统才能使用Xcode进行Objective-C的学习和iOS开发 。 Mac OS X是苹果公司为Mac系列产品开发的专属操作系统,目前搭载这款操作系统的设备有,MacBook、iMac、Mac mini。大概有3种途径可以获取Mac OS X系统,虚拟机、黑苹果、购买苹果设备。 (3) 调试设备 Xcode自带了iOS模拟器功能,因此我们可以将开发好的应用程序,运行到模拟器上进行测试,不一定要买iPhone\iPad进行调试。当然,真机和模拟器肯定是区别的,因此在发布应用程序之前肯定要进行真机测试。 (4) 开发者证书 如果你是想把开发好的iOS程序发布到App Store上去卖,或者把程序运行到真机(iPhone\iPad)上,那么就必须有iOS个人开发者证书。这个需要向苹果买,一年99$。如果纯粹是学习,不用买这个证书,一切开发都是免费的。 2.4应用程序框架 应用程序主要包括以下几大框架,Foundation、UIKit、Core Data 、 Core Graphics、 Core Animation等几大框架。 在你开发程序时,主要使用框架就是Foundation和UIKit,因为它们包你 需要的大部分东西,你的应用程序,UIKit和其它的框架都是建立在Foundation框架上 Foundation框架是用Object-C对Core Foundation框架里许多特性的封装。 使用Foundation可以: 5 • 创建和管理集合,比如数组和字典 • 访问存储在应用程序里的图片和其它资源 • 创建和管理字符串 • 提交和接收通知 • 创建日期和时间对象 • 自动发现IP网络上的设备 • 操作URL流 所有的iOS应用程序都基于UIKit,你不能是应用程序脱离这个框架。UIKit提供了在屏幕上绘制的机制,捕获事件,和创建通用用户界面元素。UIKit也通过管理显示在屏幕上的组件来组织复杂的项目。 使用UIKit可以, • 构建和管理你的用户界面 • 捕获触摸和基于移动的事件 • 呈现文字和web内容 • 优化你的多任务程序 • 创建定制的用户界面元素 Core Data , Core Graphics, Core Animation,和OpenGLES框架都是高级的 技术。所以这些框架对于你开发应用程序也是很重要的,它们都需要时间去学习和掌握。 Core Data框架管着理应用程序数据模型,提供的内建SQLlite技术可以高 6 效的管理数据。 Core Graphics框架帮助你创建图形 Core Animation允许你创建高级的动画和虚拟效果 OpenGL ES 框架提供2D和3D绘图工具 2.5 设计模式 ,一,代理模式 应用场景,当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。 优势,解耦合 敏捷原则,开放-封闭原则 实例,tableview的 数据源delegate,通过和protocol的配合,完成委托诉求。 列表row个数delegate 自定义的delegate ,二,观察者模式 应用场景,一般为model层对,controller和view进行的通知方式,不关心谁去接收,只负责发布信息。 优势,解耦合 敏捷原则,接口隔离原则,开放-封闭原则 实例,Notification通知中心,注册通知中心,任何位置可以发送消息,注册观察者的对象可以接收。 7 kvo,键值对改变通知的观察者,平时基本没用过。 ,三,MVC模式 应用场景,是一中非常古老的设计模式,通过数据模型,控制器逻辑,视图展示将应用程序进行逻辑划分。 优势,使系统,层次清晰,职责分明,易于维护 敏捷原则,对扩展开放-对修改封闭 实例,model-即数据模型,view-视图展示,controller进行UI展现和数据交互的逻辑控制。 ,四,单例模式 应用场景,确保程序运行期某个类,只有一份实例,用于进行资源共享控制。 优势,使用简单,延时求值,易于跨模块 敏捷原则,单一职责原则 实例,[UIApplication sharedApplication]。 注意事项 软件开发合同注意事项软件销售合同注意事项电梯维保合同注意事项软件销售合同注意事项员工离职注意事项 ,确保使用者只能通过 getInstance方法才能获得,单例类的唯一实例。 java,C++中使其没有公有构造函数,私有化并覆盖其构造函数。 object c中,重写allocWithZone方法,保证即使用户用 alloc方法直接创建单例类的实例, 返回的也只是此单例类的唯一静态变量。 ,五,策略模式 8 应用场景,定义算法族,封装起来,使他们之间可以相互替换。 优势,使算法的变化独立于使用算法的用户 敏捷原则,接口隔离原则,多用组合,少用继承,针对接口编程,而非实现。 实例,排序算法,NSArray的sortedArrayUsingSelector,经典的鸭子会叫,会飞案例。 注意事项,1,剥离类中易于变化的行为,通过组合的方式嵌入抽象基类 2,变化的行为抽象基类为,所有可变变化的父类 3,用户类的最终实例,通过注入行为实例的方式,设定易变行为 防止了继承行为方式,导致无关行为污染子类。完成了策略封装和可替换性。 ,六,工厂模式 应用场景,工厂方式创建类的实例,多与proxy模式配合,创建可替换代理类。 优势,易于替换,面向抽象编程,application只与抽象工厂和易变类的共性抽象类发生调用关系。 敏捷原则,DIP依赖倒置原则 实例,项目部署环境中依赖多个不同类型的数据库时,需要使用工厂配合proxy完成易用性替换 注意事项,项目初期,软件结构和需求都没有稳定下来时,不建议使用此模式,因为其劣势也很明显, 增 加了代码的复杂度,增加了调用层次,增加了内存负担。所以要注意防止 模式的滥用。 9 2.6第三方库 图片异步加载: SDWebImage 网络通信库 AFNetworking MKNetworkKit ASIHTTPRequest 网络状态检查: Reachability JSON: SBJSON JSONKit XML: TouchXML SQLite: FMDB 下拉刷新: 10 MJRefresh SVPullToRefresh 提示框: MBProgressHUD 3. 功能模块的设计 这个App由首页,分类图片,灵感,关注,设置,及个人信息六个界面组成,每个界面展示的都有明确的信息,让我们有多样化的选择。 3.1首页界面的设计 首页由两部分组成,上方由是一个滚动视图,能够无限滚动,并且能够用手滑动,下方是一个列表,也能够滑动。首页展示的是装修后的家居图片,并且每张图片都有相应的文字作简单的介绍。每张图片都是能点击的,点进去是详情,详细介绍了如何装修,及这样装修的好处,图片也能都标记为喜欢,并收集。设计流程见图3-1, 滚动视 已登录 编辑操图 图 首页 作 片 详列表视未登录 登录界面 情 图 图3-1 首页设计流程 11 3.2分类界面 这个界面通过分类来快速找到你想要的,房间哪个部分的装修图片。分为三大类,空间、局部、风格。每个大类里面又分为许多小类,客厅、衣帽间,餐厅、厨房、卫生间等等。点击不同的分类,我们能够进入到不同的装修图片展示界面。图片展示界面是一个列表,图片能够放大查看,并且也能够进行标记。设计流程见图3-2, 空间 客厅、餐厅、厨房等 编图 分类 现代、中式、日式等 风格 辑片 详操 吊顶、阳台、楼梯等 局部 作 情 图3-2 分类界面设计流程 3.3灵感界面 在这个界面上我们可以创建格子,能给格子命名,并给格子配上自己喜欢的 12 图片,能够进行重命名,删除等一些编辑操作。创建自己喜欢的装修方法,即灵感。在这个界面我们也能看到自己标注过的喜欢的图片,也能显示有多少人喜欢了这种装修方法,图片点进去是装修方法的详情,并且能够编辑,进行一些删除等操作。设计流程见图3-3, 命名 灵感 创建格子 删除 更换图片 灵感 取消喜欢 喜欢 图片 查看详情 图3-3 灵感界面设计流程 13 3.4关注界面 每一种装修方法作品都有相应的作者,如果我们关注了这个作者,那么我们在这个界面就能看到这个作者所有的作品,作品点进去也是详情界面,每张图片也能够标记为喜欢。并且,在这个界面,也能够看见别人使用这个APP的动态,有哪些人喜欢了哪些作品,看别人的装修习惯是什么样的。设计流程见图3-4, 列表试图 热门 关注 编图 辑片 关注 列表试图 操详 作 情 图3-4 关注界面设计流程 3.5设置界面 这个界面显示自己的头像,昵称。在这个界面我们可以清空缓存,关于这个APP的介绍,以及意见反馈,退出登录。设计流程见图3-5, 14 头像昵称 清空缓存 给我评分 设置 意见反馈 关于 退出登录 图3-5 设置界面设计流程 4. 功能模块的具体实现 见每个界面的具体实现根据设计图来做,包括各个界面之间的切换和每个界面的具体介绍及代码编写。 15 4.1各个界面之间的切换 各个界面之间通过侧边栏来进行切换,点击相应的按钮可以进入到相应的界 面,上图即为效果图,侧边栏用到了ZYMenuController这个第三方框架,将 ZYMenuController的对象作为window的根视图,代码实现为, ZYFirstViewController * firstViewController = [[[ZYFirstViewController alloc] init]autorelease]; UINavigationController * nav = [[[UINavigationController alloc] initWithRootViewController:firstViewController] autorelease]; ZYMenuController * menu = [[ZYMenuController alloc] initWithRootViewController:nav leftViewController:leftViewController rightViewController:nil]; self.window.rootViewController = menu; [self.window makeKeyAndVisible]; 视图使用tableView写的,能够滑动,增强了用户的体验 _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 120, self.view.frame.size.width, self.view.frame.size.height - 150)]; _tableView.delegate = self; _tableView.dataSource = self; _tableView.backgroundColor = [UIColor clearColor]; _tableView.separatorStyle = UITableViewCellSeparatorStyleNone; [self.view addSubview:_tableView]; [_tableView release]; 16 实际测试效果图见图4-1, 17 图4-1 界面切换效果 4.2首页界面的具体实现逻辑及代码 (1)首页界面 首页上方是一个能够无限循环滚动的滚动视图,用的scrollView实现,将button加到scrollView上面,可点击,并也能够用手滑动。下方用tableView实现,是一个列表视图。将上方的scrollView和下方的tableView放到一个大的scrollView上面,实现整个界面都能够滑动。tableView是自定义的,能够满足设计的需求。代码实现为, //创建大scrollView _bigScrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0,0, 320, self.view.frame.size.height)]; 18 _bigScrollView.delegate = self; [self.view addSubview:_bigScrollView]; //屏幕上方的小scrollView [HttpEngine getAdvertisingRequestWithCompletionBlock:^(NSMutableArray *array) { self.scrollDataArray = array; _scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 160)]; // _scrollView.backgroundColor = [UIColor redColor]; _scrollView.delegate = self; _scrollView.pagingEnabled = YES; _scrollView.contentSize = CGSizeMake(self.view.frame.size.width*self.scrollDataArray.count, 170); [_bigScrollView addSubview:_scrollView]; 实际测试效果图见图4-2-1, 19 图4-2-1 首页效果 ,2,详情界面 20 详情界面主要使用自定义tableView实现,第一区显示的是大标题和作者的 头像、昵称及时间。第二区显示的 简介,是对这个装修方法的简单介绍,并且这 个高度要根据文字的多少自适应高度。第三区显示的是图片,即装修后的效果图。 代码实现为, -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"]; if(cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"Cell"]; UIImageView * imageView = [[UIImageView alloc] init]; imageView.tag = 1; [cell addSubview:imageView]; [imageView release]; } } //根据文字多少算高度 21 - (float)stringHeightWithString:(NSString *)string { // 计算文字宽高 float height = [string boundingRectWithSize:CGSizeMake(270, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]} context:nil].size.height; // 向上取整 return ceilf(height); } 实际测试效果图见图4-2-2, 22 图4-2-2 详情界面效果 4.3 分类界面 从这个界面里能通过具体的分类来找到自己需要的装修设计图,并且能将这些装修图片能够标记为喜欢。 (1) 分类首页 这个页面总共分为三个大区,即空间、局部、风格。自己想看什么样的效果可从分类界面里面详细的选择,每一种都有不同的风格,让你有多样化的选择。通过自定义tableView实现。隐藏了系统自带的分割线,自己实现分割线这个功能。图片和文字放到一个数组里面,作为tableView的数据源数组 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 23 UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"]; if(cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"Cell"] autorelease]; //自定义imageView与label,否则图片太大 UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 8, 30, 30)]; imageView.tag = 1; [cell addSubview:imageView]; [imageView release]; UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(50, 5, 100, 30)]; label.tag = 2; [cell addSubview:label]; [label release]; } UIImageView * imageView = (UIImageView *)[cell viewWithTag:1]; UILabel * label = (UILabel *)[cell viewWithTag:2]; 24 label.text = self.textArray[indexPath.section][indexPath.row]; imageView.image = [UIImage imageNamed:self.imageArray[indexPath.section][indexPath.row]]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; return cell; } 实际测试效果图见图4-3-1, 图4-3-1 分类首页效果 (2)分类图片界面 通过两竖排的图片更为直观的来展示各种各样的装修样式。从服务器获得数据后, 将数据分为两个数组,每一个数组作为每一竖排的数据源数组,自定义tableView 实现。 25 [HttpEngine getClassImageRequsetWithCategoryId:self.cate TagId:self.tag CompletionBlock:^(NSMutableArray *array) { self.dataArray = array; // NSLog(@"%@",self.dataArray); //将self.dataArray分到两个数组中,分别为cell上两个button的图片数据 网址 for(int i=0;i 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 ,采用MVC设计模式设计实现的。 这个APP的功能基本满足了用户的所有需求,但是还有一些不完善的地方,比如这个APP没有推送功能,无法增强用户的粘合性,分类界面用户无法通过搜索功能来搜索自己想要的装修方式,所以后期还需要做很多的工作来完善这个应用。这个APP的实现不仅仅是对自己的学习成果的检验,更是最自己的一个提升。有很多功能只有自己亲身实现出来才能更好理解这个知识,让自己的能力得到提升。比如在详情界面中,有两种表,一种是文字性的,一种是图片性的,当重用这两种表时怎么区分就不清楚了。因此,还要多加练习才能弥补自己在动手能力上的缺陷,更加完善自己的程序功能。 参考文献 [1] Apple Developer,Apple 文档。 [2] 张亦航,iOS开发系列之 C/Objective-C语言基础,北京,北京人民出版社, 42 2011 [3] [美]stephenG.Kochan. Programming in Objective-C 2.0[M] ,北京,机械工业出版社2010 [4] [美]Aaron Hillegas. 苹果开发之Cocoa编程[M],北京,电子工业出版社.2014 [5] 曾源.IOS编程实战宝典[M],北京,清华大学出版社2014 [6] 高俊峰.循序渐进服务器基本知识[M],北京,机械工业出版社2013 致谢 从毕业设计的选题、任务书的书写、毕业设计阶段到毕业论文的完成,这长达半年的时间里,使我对系统开发的整个流程有了更深刻的认识,对本专业的基本理论、专业知识和基本技术进行了梳理,并有了更深入的了解,使我在四年中所学到的知识得到了升华,真正达到了学以致用。 岁月如梭,如歌。转眼间,四年的大学求学生活即将结束,站在毕业的门槛上,回首往昔,奋斗和辛劳成为丝丝的记忆,甜美与欢笑也都尘埃落定。河南科技学院以其优良的学习风气、严谨的科研氛围教我求学,以其博大包容的情怀胸襟、浪漫充实的校园生活育我成人。值此毕业论文完成之际,我谨向所有关心、爱护、帮助我的人们表示最诚挚的感谢与最美好的祝愿。 本次毕业设计是在洪新华老师指导下完成的。在设计过程中,洪老师仔细耐心地对我的毕业设计任务及内容进行及时指导,并在最后对成果系统的设计说明 43 书做出了全面、合理、仔细得修改批注,竭尽全力帮助我完成本次的毕业设计任务。在这里,忠心表示对洪老师的悉心关怀和耐心指导的无限感谢与感恩。更重要的是,在设计的过程,洪老师所具备的严谨求真为学的务实精神,也是我之后无论是在学习还是在工作中的学习榜样。 最后,我要衷心感谢各位老师和同学们在我的设计过程中给予我的极大帮助使我能够及时、顺利地完成此次的毕业设计。最后再一次在这里也对所有教过我的老师们表示衷心的感谢 44
本文档为【毕业设计(论文)-基于IOS开发的装修家居APP的设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_353097
暂无简介~
格式:doc
大小:148KB
软件:Word
页数:39
分类:生活休闲
上传时间:2017-09-02
浏览量:157