码迷,mamicode.com
首页 > 其他好文 > 详细

OC小项目之攒机

时间:2015-07-18 20:02:44      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:ios   oc小项目

题目是这样的:做一个组装电脑的小程序,类似于中关村攒机那样的。

需要实现的功能:1、主目录包括:cpu、主板、内存、硬盘、显卡、机箱、DISK  显示主目录,效果可以如图一

                       2、每个部件下面有多个产品可供选择,显示这些产品。如图二

                       3、每个部件选择完成以后回到步骤1,并把选择的产品信息同步到步骤1中,如图三

                        4、整个产品完成选择以后效果如图四,选过的部件可以重新选择,用户输入不存在的选项会提示并要                                 求重新输入。如图五

技术分享

                             图一


技术分享

                        图二


技术分享

                            图三



技术分享

                            图四



技术分享

                            图五

看完题目有思路了吗?可以自己先动手试一下!我在下面简短写了一下我的思路。你们可以看看(最好先看我的代码)。

下面标记为紫色字体的都是OC中的知识点,可以注意下!!





    好了,大概知道要求以后我们就动手吧!写程序就如同帮人脱衣服,我们要一层一层的来,最后我们就可以看到我们想要看到的结果了!

    首先,我们从分析要求下手。这个程序首先需要的市一个展示信息给用户看,并且用户可以做出选择。那么。我们先新建一个类,然后由这个类为我们提供需要的方法。

步骤1新建一个类DevicesClass,类中添加一个对象方法 - (void)dispalyDevices

    我们已经找到入口了,那么接下来的事便只要按部就班即可。对象方法里,我们首先需要打印一边信息告诉用户我们有哪些产品可以选择。

步骤2、打印部件信息,这里我们可以先将部件名存入数组,用循环调用数组实现打印,当然我们需要初始化这个数组)      

    用户看到了可以选择的信息,他们需要选择,所以我们要给他们提供选择框,选择完成之后,我们根据用户的选择在网上下载相应产品的数据,(这里我们把数据源的网址存入一个数组中,根据用户输入的数字作为数组下标调用数据源网址)

步骤3、我们通过某种方法传入用户选择的数据源网址,下载相应的数据并存储到一个数组中)

    实现步骤3的前提,我们需要一个方法可以通过网址获得数据,这里我们创建一个类,对象方法。并通过对象方法实现。

步骤3.1,创建下载并解析数据的类,对象方法 DownloadDataClass

    对于步骤3.1中获得的数据,我们需要一个模型来接受这些数据。所以创建一个模型。模型的实现大家应该都知道。不知道的就回去看看书,这个很重要。

步骤3.1.1创建模型 DataModel模型包含三个属性

    到了这一步,我们已经成功一半了。获得数据以后,我们将选择获得的数据存入一个可变字典中(记得初始化),便于后面使用,我们打印出用户选择的部件中所有可供选择的产品(注意,部件跟部件产品者两个概念。部件一类产品,如Cpu,部件产品是这类产品中的某一个型号,如:【型号:Intel 赛扬 G1820(盒)】【¥230)      

步骤4、打印可供选择的所有产品的数据)

    让用户选择产品,并将用户选择的序号存入一个数组,(为什么是将序号存入数组而不是直接把对应的产品信息存入呢?我们的产品信息包含三个部分:name、price、mark,而很多时候我们不方便调用其中某一个,所以我们将选择的数据存入数组,之后可以调用这个存入的数字去寻找对应的产品,然后将得到的数组,(注意这里将得到数组,)转换成模型,然后调用这三个属性中的某一个)

步骤5、存储选择的信息)

    最后的最后,我们使用递归的思想,调用这个方法本身,实现循环。那么就大功告成了!



本文出自 “10533966” 博客,转载请与作者联系!

OC小项目之攒机

标签:ios   oc小项目

原文地址:http://10543966.blog.51cto.com/10533966/1675901

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!