《基于Android平台的菜谱实现》由会员分享,可在线阅读,更多相关《基于Android平台的菜谱实现(14页珍藏版)》请在人人文库网上搜索。

1、基于Android平台的菜谱实现1需求分析随着手机的广泛普及,无线技术的突飞猛进,移动生活、務动办公逐渐由概念转变为现 实,对于传统的餐饮业也产生了潜務默化的影响。目前,大多数餐厅仍然以传统的纸质菜单为主。但是,这种点菜方式存在诸多弊端:从 消费者角度来讲,菜谱不能及时更新,导致菜谱信息陈旧,点菜时经常岀现某菜品已下架等 情况。用户需求:从餐厅老板来说,及时更新纸质的菜谱,无疑会增加餐厅的额外支出。为了 改善传统纸质菜谱的弊端,将菜谱应用于手机客户端,为消费者带来更为便利的客户体验。 而实时的菜品更新,不仅解决了纸质菜谱短时间内就出现脏、舌L、差的问题,实现餐厅无纸 化操作,而且潜在的提升了饭。

2、店的形象。功能需求:用户可以进入菜单界面选择菜品分类,进入相应的分类内,查看该分类中的 菜品信息,并对菜品的等级程度进行评价,査询某特龙菜品,也可添加新菜品,删除菜品等。2功能实现本APP基于自身的需求,同时对西北大学周围众多餐厅现状的合理分析,结合实际, 设计并实现了一个基于移动手机平台的智能菜谱显示,该系统的设汁基于Android智能操作 系统,简单的SQLite数据库,实现了对菜品的增、删、査、改各个功能。消费者可以添加要点的菜品,在餐后可以对菜品的口味及好感程度进行具体化的评价, 这样是对餐厅工作人员的一个回馈,同时也可以为其他消费者就餐提供建议。2.1主界面1、实现了对菜品的具体分类。

3、。如图2-110:43 Q icil t3 40 76%CK我的菜谱3WiW分类:图2-1单击所选择的菜品分类,出现菜品的镜像显示,为消费者提供更为直观的视觉效果,有 助于消费者做岀选择。如图222川毗 Q10:439 lOl C5 * 76% CB10:45Q o O * esg巣谧显示 菜谱显示QQ商品列表:98 商品列表: 图2-42、搜索菜品菜谱显示界而会显示该分类下的所有菜品,当需要宜接看到某单个菜品的具体消息时, 可以通过搜索框,进行菜名的特泄筛选。如图251 W * ZITKCBigroup = new ArrayList();group.addC 粥品“);group.add(。

4、派和糕点“);group.add(膨化食品“);group.add(H 酱菜辅料”);group.add(H 敢爱敢做”);group. add(”饼干”);创建适配器newAr rayAd a pte rada pte r=ArrayAdapter(this,R.layout.item_spi nn er,Riditem_styl 已 group);获得控件对象Spinner groupSpinner = (Spinner) this.findViewByld(R.id.spinnerl);设置spinner对象的数据适配器groupSpi nn er.setAdapter(adapter)。

5、;groupSpinner.setPrompt(H 食物分类);3.3菜谱显示public class MenuActivity extends Activity!private ArrayList checkBox = new ArrayList();private booleanf hasChecked;private ListView listView;private RatingBar ratBar;private android.widget.SimpleAdapter adapter;private List list = ms.QueryAllData();for(FoodMen。

6、u foodmenil:list)foodmenu.getName().toStri ng();if(n ame.equals(foodme nu .getName().toString()HashMapfoodMap=newHashMap();foodMap.put(H nu mfoodme nu.getNum();foodMap.put(H namejfoodme nu.getName();foodMap.put(Hclassificatio n, foodmenu. getClassificati on();foodMap.put(,describe,/foodme nugetDescr。

7、ibe(); datal.add(foodMap);int a=new int JfR.id.tvno.id.tvfoodname.id.tvcIassification.id.bdetail; adapter=newan droid.widget.SimpleAdapter(MenuActivity.this.getApplicatio nContext(),datal,R.layout.listjtem2, new String,num,/,,name,/,,classification,/,describe,l/ a);listView=(ListView) findViewByld(R。

8、.id.listview);HstView.setTextFilterEnabled(true);将listView控件和adapter绑定listView.setAdapter(adapter);listView.setOnltemClickListener(new AdapterView.OnltemClickListener() Overridepublic void onltemClick(AdapterView adapterVievy, View view,int position, long id) / TODO Auto-generated method stubHashMap。

9、 itemMap = (HashMap)adapterView.getltemAtPosition(positi on);int num = (Integer) itemMap.get(Nnumu);String foodName = (String) itemMapget(”foodName”);StringfoodClassification=(String)itemMap-getCfoodClassificatoin11);String describe = (String) item Map.getfdescribe);FoodMenu foodm = new FoodMenu();f。

10、oodm.setNum(num);foodm.setName(foodName);foodm.setClassification(foodClassification);foodm.setDescribe(describe);In tent in tent = new In tent();intent.putExtra(,food,/ foodm);intent.setClass(MenuActivity.this, ShowInfoActivity.class);MenuActivity.this.startActivity(i ntent);););Menu Service ms = ne。

11、w MenuService(this);查询所有的菜品List list = ms.QueryAllData();创建一个ArrayList集合,用于存放拥有food信息的MAP集合ArrayUst foodMap = new HashMap();foodMap.put(H num 蔦 foodme nu .getNum);foodMap.put(,name,/foodme nu.getName();foodMap.putCclassificationfoodmenu.getClass ificationf);foodMap.put(,describe,/foodme nu .getDescr。

12、ibe();data.add(foodMap);int a=new int JfR.id.tvnOzR.id.tvfoodname.id.tvcIassificatioR.id.bdetail;adapter = new android.widget.SimpleAdapterfthis.getApplicationContextO, data,R.layout.listjtem2, new StringFum罗nam&Tclassificationf describe) a); listView=(ListView) findViewByld(R.id.listview);HstView.s。

13、etTextFilterEnabled(true);将listView控件和adapter绑定listView.setAdapter(adapter);listView.setOnltemClickListener(new AdapterView.OnltemClickListener() (Overridepublic void onltemClick(AdapterView adapterView, View view,int position, long id) /TODO Auto-generated method stubHashMapitemMap=(HashMap)adapter。

14、View.getltemAtPosition(positi on);int num = (Integer) itemMap.get(Hnum”);String foodName = (String) itemMap.getCoodName11);String foodClassification = (String) itemMap.getCfoodClassificatoin1);String describe = (String) item Map.getCdescribe);FoodMenu foodm = new FoodMenu();foodm.setNum(num);foodm.s。

15、etName(foodName);foodm.setClassification(foodClassification);foodm.setDescribe(describe);Intent intent = new lntent); intent.putExtraCfood, foodm); intent.setClass(MenuActivity.this, ShowInfoActivity.class); MenuActivity.this.startActivity(i ntent););check =(CheckBox) findViewByld(R.id.checkJtem);ch。

16、eck.setOnCheckedChangeListenGr(new CheckBox.OnCheckedChangeListener() Overridepublic void onCheckedChanged(CompoundButton buttonView,boolean isChecked) 记录食品选中状态if(isChecked)MenuService ms = new MenuServic&MenuActivity.this); ms.delete(listView.getCheckedltemPosition(););4测试1、模块测试主界而、菜品图片显示界而,菜品信息显示界。

17、而,添加界而等之间的跳转是否正常, 界而之间的衔接是否合理。经过多次跳转的测试,均到了预期的效果。界面设计虽然精 简,使得操作简单,但是界而缺少推送,使得信息太过单一,信息量太少,影响用户体 验。2、单元测试增、删、査、改是否正常(1)测试增加功能:在添加界面添加一道新菜品:草莓蛋糕,点击保存后,菜品添加功能测试测试用例测试目的测试结果测试用例一添加草莓蛋糕选择分类是否实现成功选择分类测试用例二添加抹茶慕斯单击保存后是否成功添加到菜单,是否成 功显示添加菜品的信息添加成功且信息正确(2)测试删除功能删除功能测试测试用例测试目的测试结果测试用例一选中草莓蛋糕是否将该菜品删除成功删除测试用例二淸空。

18、菜单按钮单击后是否将菜单中所有菜品删除菜单淸空(3)测试査询功能査询功能测试测试用例测试目的测试结果测试用例一选中草莓蛋糕是否将该菜品在菜单中单独显示单独显示 J测试用例二选中抹茶慕斯査询到的信息是否正确信息正确(4)等级评价测试评价功能测试测试用例测试目的测试结果测试用例一评价草莓蛋糕能否给岀星级评价成功评级3、数据库测试测试添加的菜品是否成功记录到数据库中,删除的菜品是否在数据库中移除,经多 次测试,每次添加的菜品均可添加到数据库表中,删除的菜品也会在表中消失。5期望本软件真正运用到市场时,仍存在很多问题。后期设计将食客与饭店分开成为两个独立 的个体,但是之间的交互更为密切,功能更为明确。食客端订餐,评价菜品,查询菜品。而 饭店用户端,可以对食客反馈的信息进行管理,对食客给与的建议进行整合,进行对菜品的 改进以及调整。并且添加一些推送信息,给食客更丰富的资讯,带来更好的用户体验。

基于Android的网络菜谱app,基于Android平台的菜谱实现相关推荐

  1. Android关于网络访问app应用开发相关的异常总结

    现在大多数软件都需要进行网络访问,比如 手游 浏览器 聊天工具 理财产品 头条 - 如果你开发的软件不支持网络访问,也就是单机版,用户自娱自乐类型.比如 闹钟 指南针 记事本 计算器 - 这些都是单机 ...

  2. 基于android的校园新闻app,基于Android的校园新闻app开发第三稿李威案例.doc

    届 别 2015届 学 号 201114100130 毕业设计(论文) 基于Android平台的校园新闻app的开发 姓 名 李威 系 别. 专 业 数学与金融学院 信息与计算科学 导 师 姓 名.职 ...

  3. Android底层网络防火墙,详解Android 利用Iptables实现网络黑白名单(防火墙)

    一.概述 为了使读此简笔的人对Iptables有一个简单的了解,此处强行百度了一波概念,如果想深入的了解Iptables的各种配置规则和内核对其的管理运行机制请自行www.baidu.com,这些并不 ...

  4. android 车载app怎么开发,Android开发智能车载App(1)---android控件及属性介绍

    1.展示文本控件 TextView 属性名称 描述 android:text 设置显示文本. android:textSize 设置文字大小,推荐度量单位"sp",如"1 ...

  5. 基于android的智能秤App,基于Android的智能运动健康秤产品App的设计与实现

    摘要: 近年,互联网行业对物联网的讨论从未停止,物联网的发展极为迅猛.智能家居是在互联网基础上,家庭物联化的具体体现之一.本课题为"基于Android的智能运动健康秤产品App的设计与实现& ...

  6. 基于安卓的个人理财记账app(android毕业设计)

    个人理财管理系统是基于Android系统开发的一款手机应用程序.它主要是为了满足人们在快节奏的生活中可以随时记下自己的收支情况的需求.个人理财管理系统与传统的记账方式相比,体现了它的便捷性.安全性及可 ...

  7. android菜谱app设计方案,Android菜单设计指南(上)

    菜单设计快速预览 •    任何指令的选项菜单只针对当前的操作. •    任何指令的(弹出式)文本菜单只针对当前被选中项. •    优先排序频繁使用的指令(or功能). •    将最重要的指令( ...

  8. android异步网络连接开源:Android Asynchronous Http Client

    在github发现还有一个Android Asynchronous Http Client,发现也不错.基于异步方式执行android内置的apache httpClient组建,http请求在UI线 ...

  9. outlook+app+android,微软Outlook Web App抢占Android平台

    微软宣布了一项有关Outlook邮件项目的重大声明,将把其Outlook Web App (OWA)带至谷歌的Android系统平台. 微软于近日宣布了一项有关Outlook邮件项目的重大声明,其中或 ...

最新文章

  1. 小型电梯尺寸_简易式家用电梯-潞城=小型阁楼家用电梯
  2. 【LeetCode从零单排】No19.RemoveNthNodeFromEndofList
  3. Spring5源码 - 05 invokeBeanFactoryPostProcessors 源码解读_2
  4. 2019-11-10 秩和奇异的一些概念
  5. 控制台怎么退出mysql_退出mysql控制台与退出mysql
  6. checkbox居中 editor_如何在ListBoxItem中居中WPF CheckBox
  7. PyTorch 1.0 中文文档:多进程包 - torch.multiprocessing
  8. LCD 驱动的整体分析。
  9. SVN工具介绍- VisualSVN Server与TortoiseSVN
  10. 微信公众号+商户平台参数配置
  11. U产品快报 | UK8S支持K8S 1.18版本、URTC新版Webdemo上线等重要更新
  12. 8926平台boot过程分析
  13. 中国出口印度尼西亚主要商品
  14. eureka自我保护机制EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY‘RE NOT
  15. idea上传写好的springboot项目到码市coding
  16. echarts配合google地图,并自定义google地图的样式
  17. PBR--RTR4笔记--第八章 光与颜色
  18. qq象棋棋谱格式详解及其解析
  19. Linux(ubuntu)中删除除了一个文件之外的所有文件
  20. 华为OD机试 - 字符串分割

热门文章

  1. 使用AForge设置摄像头参数
  2. 未来电子病历系统 以结构化数据为核心
  3. 教师资格证面试计算机教案模板,2017年教师资格证面试教案模板
  4. 用批处理重启资源管理器
  5. JavaScript闭包函数与闭包释放
  6. DELMIA软件教程之软件环境设置
  7. 【汇正财经】什么是多翻空?
  8. SQL存储过程传入可以为空的参数
  9. 冰河开始对Dubbo下手了!
  10. 【BLE MIDI】MIDI 文件速度设置识别 ( 查找 midi 文件中速度相关的二进制数据 | FF 51 03 速度设置指令 )