基于Android平台的菜谱实现

合集下载

大学毕业设计---基于android手机终端点菜系统

大学毕业设计---基于android手机终端点菜系统

****2014 届本科毕业论文(设计)论文(设计)题目:Android手机终端点菜系统学生姓名:***所在院系:信息工程学院所学专业:计算机科学与技术导师姓名:***完成时间:2014-05-10摘要本课题所实现的电子点菜系统改变了传统的服务员和菜单的点菜模式,采用新颖的电子终端点菜系统,这种新式的方式使得餐馆更有档次和特色,对于其在同行业的竞争有着明显的帮助。

本课题采用c/s开发模式,分为服务器端和Android客户端的一些操作。

在服务器端主要采用Jsp动态网页技术,实现了后台餐馆一方对菜谱信息的管理和对顾客订单的处理。

在客户端主要采用Android技术实现了顾客对菜品的查找、分类查看、顾客对自己订单的选择和查看,顾客在确定订单之后可以提交给餐馆一方,使得餐馆一方得以查看并通知厨房做出菜品。

关键词Android,MySQL,Jsp,JavaABSTRACTElectronic ordering system the realization of this project has changed the traditional service and menu menu mode,the novel electronic terminal order system,the new method makes the restaurant more grades and characteristics,this is very helpful for the same industry competition.This topic uses c/s development mode,divided into some operation server and Android client.On the server side Jsp dynamic Webpage technology mainly uses,this has realized the backstage restaurant management side of the menu informationand customer order processing.The client uses the Android technology to realize the customer on the foodsearch, classification and view view, of their customers the choice of orders,customers in the restaurant after the order is confirmed can be submitted to a party.This makes the restaurant side to see and notice the kitchen to make dishes.Keywords Android,MySQL,Jsp,Java目录1. 绪论 (1)1.1项目背景及意义 (1)1.2 Android系统概述 (1)2. 系统理论和技术路线 (3)2.1 Android四大组件 (3)2.2 c/s体系 (3)2.3 Jsp和Servlet (4)2.4系统主要路线 (4)2.5 运行环境要求 (5)2.5.1 硬件环境 (5)2.5.2 软件环境 (5)3. 系统需求分析 (5)3.1各模块关系图 (5)3.2数据库设计 (6)3.2.1 数据库列表 (6)3.2.2数据库连接的实现 (7)3.3 功能需求描述 (11)3.4 主要开发工具 (13)3.4.1 MyEclipse (13)3.4.2 ADT (14)4. 软件系统设计 (15)4.1后台功能模块 (15)4.1.1后台登陆模块 (15)4.1.2后台菜品模块 (17)4.1.3后台订单模块 (19)4.2客户端功能模块 (20)4.2.1首页面模块 (20)4.2.2主功能模块 (21)4.2.3订单模块 (23)4.2.4游戏模块 (25)5. 结论 (26)谢词 (27)参考文献 (28)1.绪论1.1项目背景及意义由于互联网的高速发展,而电子技术由于在外国比如说美国最先得到了发展并被用于生活的各个领域,而餐饮作为我们生活中的一个重要环节,它的发展也是非常迅猛的,以美国举例,从1999年的餐饮业的营业额3500多亿美元到2010年的6000多亿,由于人们对餐饮业的关注,所以电子技术对餐饮的影响非常大,所以像手机点菜系统的发展在美国已经逐渐得得到了普及。

基于Android的点餐系统的设计及实现

基于Android的点餐系统的设计及实现

武汉理工大学毕业设计(论文)基于Android的点餐系统的设计及实现学院(系):信息工程学院专业班级:通信工程专业1205班学生姓名:指导教师:本科生毕业设计(论文)任务书学生姓名专业班级指导教师工作单位武汉理工大学信息学院设计(论文)题目:基于Android的点餐系统的设计及实现设计(论文)主要内容:随着无线网络的不断发展,智能移动终端的迅速普及,越来越多的人开始体会到移动互联网带来的深刻变革。

移动互联网不仅改变了人们的生活方式,甚至对人们工作方式也产生了巨大的影响。

本课题主要实现一种基于Android系统的无线点餐系统,点餐过程无需工作人员干涉,可为顾客提供一种宽松的点餐环境,同时可为餐厅节约人力成本,实现点餐的方便快捷。

要求完成的主要任务:1. 学习并掌握Android基础知识和编程技术;2. 对点餐系统进行需求分析,并进行基本界面的设计;3. 实现点餐系统的用户管理,订单管理和商户管理等基本功能,进行系统性能测试;4. 撰写毕业设计论文;5. 查阅参考文献15篇以上(其中英文文献不少于3篇);6. 完成不少于12000字的毕业论文撰写并完成答辩的相关工作;7. 完成不低于5000汉字(20000英文印刷符)的教师指定的相关文献的英译汉翻译;8. 正文应包含不少于12幅图(包括:电路原理图、流程图、结构框图、程序框图等)必读参考资料[1] Bruce Eckel.Thinking In Java[M].Prentice Hall,Inc,USA.2009.[2] Marko Gargenta, Masumi Nakamura.Learning Android[M].O'Reilly Media, Inc, USA.2012.[3] James C,Sheusi.Android Application Development for Java Programmers[M].Cengage Learning,USA.2014.[4] 张红强.3G技术在无线点餐系统中的应用[J].价值工程2011(12).[5] 杨丰盛.Android应用开发揭秘[M].北京: 机械工业出版社,2010.1.武汉理工大学毕业设计(论文)2009.9.指导教师签名:系主任签名:院长签名(章)武汉理工大学本科学生毕业设计(论文)开题报告金管理问题、帐务错漏问题、结帐优惠问题等。

一种手机端菜谱系统的设计与实现

一种手机端菜谱系统的设计与实现

实现 了导航定位 , 方便用户前往相应餐馆就餐 。
S D K, 使用B mo b 封装好的方法 可以快速 的实现数据表添加 、 删除、
本系统可以实现A p p 菜 单的基本流程和功能, 还新增 了部分功 更改的操作 。 从 经济 层面说 : 因为是基于An d r o i d 开发 , 所 以使用设备很好 能, 可 以应用于生活中 , 增加生活便捷性 。
关键词 : 手机端 菜谱 服务 器响应 AP P 定位 中图分类号: T P 3 9 3 . 0 9 文献标识 码: A
文章 编号 : 1 0 0 7 — 9 4 1 6 ( 2 0 1 6 1 1 2 . 0 1 5 3 . O 2
1引 言
了需求 。 本系统 的产生适应人们对生活要求的提高 , 极大改善人们
设计 开发

种手机端菜谱系统的设与实现
杨 泽 丰 王 海 春 李 均
( 成 都信 息工程 大学 四 川成 都 6 1 0 0 0 0 )
摘要 : 本 文描 述 了基本A n d r o i d 环境 的一款 手机 端 菜谱 系统的设 计与 实现过 程 。 本AP P 实现 了用户 所在地 定位 、 商 家定位 、 商家导航 ( 含语 音播 报) 、 商家详 情 展 示 、 用 户信 息 更改 、 模 糊 查询 菜 谱 、 搜 索历 史、 地 域 菜 色、 菜谱 详 情 、 早餐 至 宵夜 推 荐 、 用 户之 间交流 心得 等 功 能, 可以 通过服 务 器端查看 并维护 用户数据 用 了 B m o b 第三 方服 务 器) 。 本 系统 具备菜谱 类应 用所 需要 的所 有基本功 能, 实现服务 器端与a p p 之 间 交互 。 系统具有较 强 实用性 , 可提供 给 用户 良好 的操作 体验 , 解决 用户 生活 困扰, 有 良好 的应 用价值和使 用前 景 。

基于android的点餐系统毕业设计

基于android的点餐系统毕业设计

基于android的点餐系统毕业设计
本篇毕业设计基于Android平台,是一款智能的点餐系统。

该系统主要分为客户端和服务端两部分。

客户端是安装在智能移动设备上的点餐应用,服务端是负责管理菜品、订单、用户信息等数据,并与客户端进行交互。

客户端具有以下功能:
1. 菜品展示和选择:用户可以在客户端上查看菜品清单,选择自己喜欢的菜品,并进行下单。

2. 订单管理:用户可以查看自己的历史订单,以及订单状态等信息。

3. 个人信息管理:用户可以在客户端上管理自己的个人信息,包括账户余额、常用地址等。

服务端具有以下功能:
1. 菜品管理:管理员可以在服务端上管理菜品清单,包括菜品名称、价格、描述等信息。

2. 订单管理:管理员可以查看所有订单的状态,包括已下单、已支付、已配送等状态,并进行相应的操作。

3. 用户管理:管理员可以管理所有用户的信息,包括账户余额、订单历史等。

该系统使用了Android客户端技术和Java后台技术,采用了MVC 架构,具有良好的扩展性和可维护性。

总之,该系统将为用户提供便捷、智能、高效的点餐体验,为餐
厅提供先进、可靠的管理工具,是一款值得推广的移动点餐系统。

基于Android的餐厅点餐系统的设计与实现-任务书

基于Android的餐厅点餐系统的设计与实现-任务书
2015.10.10—2015。10。24:开题报告。
2016。02。01—2016。03.01:论文初稿及期中小结.
2016.04.11-2016。05.27:论文定稿及答辩。
结果形式:
本次设计的结果形式为论文和实物。
指导教师签字:
年月日
学院意见:
签字:
年月日
[5] (美)Y。Daniel Liang著,李娜译。Java语言程序设计进阶篇.机械工业出版社.2011
[6]ShaneConderLaurenDarcey.Android移动应用开发从入门到精通。人民邮电出版社.2010
[7]武永亮。 Android开发范例实战宝典.清华大学出版社。2014
[8]王家林,王家俊,王家虎。Android项目实战——手机安全卫士开发案例解析。电子工业出版社。2013
山西大学本科毕业论文(设计)任务书
学生姓名
学号
所在专业
论文(设计)题目
基于Android的餐厅点餐系统的设计与实现
题目类别
□理论研究类□调研报告类□工程设计类其它(在□中打√)
来源
□科研项目□社会(生产)实际自拟(在□中打√)
主要任务及目标:
1.主要任务:通过Android技术,改变传统的点餐方式,摆脱纸质菜单的点菜习惯,结合手机和平板电脑,更好的了解菜品的详细内容,在点餐过程中让顾客享受更加完善的消费体验。
2。主要目标:降低纸质用品的消耗与不必要的人力。让顾客可以更为详尽的了解所有点的菜品,让顾客选点更适合自身口味的菜品.数据自动同步服务器,不再出现人为的合计价格时的错误,并能在后台总结顾客的消费习惯,有针对性的改善.
主要内容:
完成“餐厅点餐系统”的设计,餐厅点餐系统是一个适用于餐饮行业和消费者的软件,本系统初步拟定有以下模块组成:菜品管理、菜品类别管理、桌位管理、订单管理、用户管理、用户登录注册、选择菜品等。

基于Android的点餐软件的设计及实现

基于Android的点餐软件的设计及实现

基于Android的点餐软件的设计及实现随着移动互联网的继续深入发展,移动智能终端得到迅猛的发展。

由于Android 无可比拟的优势,Android手持终端牢牢占据着智能终端的头把交椅,基于Android 的系统开发,包括系统移植,底层驱动开发成为热门,一时间炙手可热。

与此同时,基于“云”计算的程序开发也成为了热点,成为人们关注的话题。

本文的主要工作是进行了Android点菜机平板的定制。

针对传统点餐系统的一些缺点比如点餐受时间地点限制,开发成本高,人机交互体验差的特点,进行了Android点餐系统的开发。

Android程序可以下载到手机和Android平板,如果下载到手机直接安装即可。

对于平板,要实现点餐功能需要从底层到高层的全线开发,这样可以裁减底层的一些驱动降低成本。

本文首先对Android操作系统进行了架构分析和详细介绍。

总结了和Linux操作系统的联系,分析了Android的驱动程序和应用程序框架。

本文进行了系统的论证比较,得出Android点餐系统和传统的局域网无线点餐机相比有无可比拟的优势的结论。

然后搭建了Android开发环境,包括系统运行环境和Android应用程序开发环境。

搭建系统运行环境主要是实现了Android操作系统向开发板的移植。

首先对系统移植进行了研究工作,围绕点餐应用所必须要满足的基本功能,把Android操作系统移植到开发板,包括系统引导加载程序移植,Android内核移植,网卡驱动程序等移植。

移植了根文件系统,实现了对Android 系统的定制。

对Android点餐软件进行了设计实现。

本文进行了系统的需求分析的设计工作,设计了点餐的工作流程,详细的用例和角色图。

通过分析和验证我们发现Android点餐系统完全可行,优势明显。

接下来对系统进行了总体的设计,包括系统架构,数据库设计。

并且对系统的各个功能模块进行了详细的分析和设计。

对部分模块进行了实现。

展示了Android点餐应用和传统的固定式点餐客户端相比的优越性——随时随地连接,节约成本,管理方便。

毕业论文--基于Android 无线电子菜谱系统开发(含外文翻译)

毕业论文--基于Android 无线电子菜谱系统开发(含外文翻译)

基于Android 无线电子菜谱系统开发(服务器端)摘要今天我们生活在充满数字的时代,随着GPRS、WLAN等无线技术的突飞猛进,移动生活、移动办公逐渐由概念转为现实,信息数据随手可及。

特别是无线数据传输技术的成熟,运营商的大力推广,WLAN的应用日渐普及,并日益影响到人们生活的方方面面,种种梦想化为现实成为了可能。

对于传统的餐饮业而言,利用无线网络技术实现点餐系统也成为了现实。

基于Android的无线点餐系统,使用当下较为流行的Android平台,通过和服务器之间的WLAN无线通信实现了灵活、高效、便捷的管理系统,优化了点餐和管理流程,使餐厅的服务和管理得到实质性的提升,提高了品牌形象和核心竞争力。

本文详细描述了基于Android无线电子菜谱系统服务器端的需求分析和系统设计,利用Struts、Spring、Hibernate和Axis2实现了一套无线点餐的Web端后台管理系统,同时向系统外部发布包括用户登录,餐桌管理,点菜管理、并台管理、转台管理、查台管理、结台管理、更新管理等的Web Service接口,方便用户在包括Android等在内的各种平台上调用,以实现无线点餐的功能。

最后对该系统的特点进行了总结,并展望了其未来的发展方向。

关键词: 无线通信;Android;服务器端;Web Service 餐饮Development of Wireless Order System based onAndroid (Service Side)AbstractToday we live in a digital era, with the rapid progress of the GPRS, WLAN and other wireless technologies, mobile life; mobile office gradually becomes to true from concept, you can get the information and data everywhere. In particular, the growing popularity of wireless data transmission technology matures, the promotion efforts of the operators, the popularity of WLAN applications grows, and is increasingly affecting all aspects of people's lives, it’s possible for all kinds of dreams comes into reality. As for traditional catering industry, the use of wireless network technology to achieve ordering system has also becomes to reality.Android-based wireless ordering system, using the popular Android platform, build a flexible, efficient and convenient management system to optimize the ordering and management process through wireless communications between the WLAN and server, this will increase the restaurant service and management substantial and improve brand image and core competitiveness.This paper describes in detail the contents of the requirement and system design of Wireless Ordering System, Use of Struts, Spring, Hibernate and Axis2 Web side of the back-office management system, and release the user logon, table management, ordering management, combination management, change table management, check table management, settle accounts management, update management, and other Web Service interface, it can be called on a variety of platforms, including Android, etc., in order to achieve a wireless ordering function. This paper finally summarizes the system characteristics and prospects of its future development.Keywords: Wireless communication; Android; server; Web Service目录1 引言 (1)1.1 选题背景和意义 (1)1.2 无线点餐系统简介 (2)1.3 本文的主要工作及组织结构 (2)1.3.1 本文的主要工作: (2)1.3.2 本文的组织结构 (3)2 需求分析 (4)2.1 功能需求 (4)2.2 用户群体描述 (5)2.3业务流程分析 (6)2.3.1访客浏览 (6)2.3.2 点菜流程 (6)2.3.3结账流程 (7)2.3.4管理用户信息 (8)2.4 数据通讯 (8)3 概要设计 (10)3.1 系统结构设计 (10)3.2 总体功能模块设计 (11)3.3 模块功能概要设计 (11)3.3.1 菜单管理模块 (11)3.3.2 餐桌管理模块 (12)3.3.3 订单管理模块 (12)3.3.4 用户管理模块 (12)3.3.5 Web Service接口 (12)4 数据库设计 (13)4.1 数据库的需求分析 (13)4.2 数据库概念设计 (13)4.3 数据库逻辑设计 (15)4.4 数据库的实现 (15)5 详细设计 (18)5.1 菜单管理模块设计 (19)5.1.1 整体设计 (19)5.1.2 管理员输入信息的传递 (19)5.2订单管理模块设计 (20)5.2.1 整体设计 (20)5.2.2 用户点餐功能 (21)5.2.3 邮件通知功能 (21)5.2.4 换桌、并桌功能 (21)5.2.4 结账功能 (22)5.3 用户管理模块设计 (22)5.3.1 整体设计 (22)5.3.2 用户注册功能 (22)5.3.3 角色管理功能 (22)5.3.3 个人信息修改功能 (22)5.4 Web Service 接口设计 (22)6 系统实现 (24)6.1 开发环境及相关技术 (24)6.2 功能模块的实现 (26)6.2.1 菜单管理功能模块的实现 (26)6.3 点菜功能模块的实现 (27)6.3.1 添加菜品的实现 (27)6.3.2 邮件通知的实现 (28)6.4 主要界面 (28)6.5 数据库操作 (34)7 测试报告 (37)7.1 测试方案 (37)7.2 测试项目 (37)7.3 主要测试用例 (38)7.4 测试进度 (40)7.5 测试方法 (41)7.6 测试结果分析 (41)7.6.1 测试的局限性 (41)7.6.2 评价测试结果的准则 (41)总结 (42)致谢 (43)参考文献 (44)附录A 译文 (45)附录B 外文原文 (51)1 引言本章主要简述无线点餐系统的选题背景和意义,并对本文的工作和组织结构做了介绍。

基于XML菜谱可定制的Android点菜系统的设计与实现

基于XML菜谱可定制的Android点菜系统的设计与实现

示区域 . 菜 单 可 分 为两 级 菜 单 , 一级 菜 单 有 西 餐 、 甜品、
饮 料 与 中餐 . 当点 击 西餐 就 会 弹 f l 5 相应的二级菜单 : 套
谱 动 态 修 改 的需 要 . 软件交付后 . 菜谱布局就基本不再
变化 . 餐厅 不能 自我 调整f
其 中餐厅 主要需要 7 — 1 4 2 3 ( 2 0 1 4 ) 0 7 — 0 0 6 6 — 0 7
D OI : 1 0 . 3 9 6 9  ̄ . i s s n . 1 0 0 7 — 1 4 2 3 . 2 0 1 4 . 0 7 . 0 1 6
基于 X ML菜 谱 可 定 制 的 A n d r o i d点 菜 系统 的设 计 与 实现
本。
关键词 :
A n d r o i d ; X M L ; 菜谱可扩展 ; 点菜系统 ; P u l l
基金项 目:
广 东 省 大 学 生 创 新 实 验 项 目( No . 1 1 3 4 7 1 1 0 0 7 )
0 引 言
目前 . 我 国餐 饮 行 业 仍 然 以传 统 的 印刷 菜 单 为 主 .
菜 窗 口布 局 域 操 作 者 可 以存 布 局 界 面 【 进 行 叮视 化 的 组 件 拖 曳 操 作 .从 左 边 一 级 菜 单 或 二 级 荣 拖 曳
餐 系 统 .餐 厅 管 理 人 员 可 以 可视 化 操 纵 菜 谱 界 面 的布 局 生 成 .生 成 的 菜 谱 界 面 以 X M I 文 件 保 存 在 服 务 器
餐、 牛扒 、 铁 板 烧 与其 他 等
点 击 二 级 菜 单 的某 一 选
够 根 据 不 同 节假 日调 整 数 字 菜 谱 的背 景 、皮 肤 与菜 品 布 局 :⑦ 根 据 业 务 发 展 动 态 调 整 菜 谱 的一 级 菜 单 与 二 级菜 单 : ③在 A n d r o i d 设 备 的更 换 后 . 程 序 的 布 局 界 面 能 白适 应 不 同 分 辨 率 的屏 幕 布 局 等 .这 些 将 导致 较 高
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Android平台的菜谱实现1需求分析随着手机的广泛普及,无线技术的突飞猛进,移动生活、移动办公逐渐由概念转变为现实,对于传统的餐饮业也产生了潜移默化的影响。

目前,大多数餐厅仍然以传统的纸质菜单为主。

但是,这种点菜方式存在诸多弊端:从消费者角度来讲,菜谱不能及时更新,导致菜谱信息陈旧,点菜时经常出现某菜品已下架等情况。

用户需求:从餐厅老板来说,及时更新纸质的菜谱,无疑会增加餐厅的额外支出。

为了改善传统纸质菜谱的弊端,将菜谱应用于手机客户端,为消费者带来更为便利的客户体验。

而实时的菜品更新,不仅解决了纸质菜谱短时间内就出现脏、乱、差的问题,实现餐厅无纸化操作,而且潜在的提升了饭店的形象。

功能需求:用户可以进入菜单界面选择菜品分类,进入相应的分类内,查看该分类中的菜品信息,并对菜品的等级程度进行评价,查询某特定菜品,也可添加新菜品,删除菜品等。

2功能实现本APP基于自身的需求,同时对西北大学周围众多餐厅现状的合理分析,结合实际,设计并实现了一个基于移动手机平台的智能菜谱显示,该系统的设计基于Android智能操作系统,简单的SQLite数据库,实现了对菜品的增、删、查、改各个功能。

消费者可以添加要点的菜品,在餐后可以对菜品的口味及好感程度进行具体化的评价,这样是对餐厅工作人员的一个回馈,同时也可以为其他消费者就餐提供建议。

2.1主界面1、实现了对菜品的具体分类。

如图2-1图2-1单击所选择的菜品分类,出现菜品的镜像显示,为消费者提供更为直观的视觉效果,有助于消费者做出选择。

如图2-2图2-22、是进入菜品显示的入口,同时也显示了该软件的使用方法如图2-3:图2-32.2菜谱显示界面1、该类菜品中所有菜品的具体展示,菜品名称、菜品分类、菜品描述、菜品编号、以及菜品的星级评价,单选或多选菜品。

如图2-4:图2-42、搜索菜品菜谱显示界面会显示该分类下的所有菜品,当需要直接看到某单个菜品的具体消息时,可以通过搜索框,进行菜名的特定筛选。

如图2-5图2-53、对菜品进行添加4、删除菜品当菜品长时间被消费者冷落,或者有不想再推出的菜品时,进行及时的删除。

为消费者提供实时的消息。

如图2-6:图2-62.3菜品添加界面当有新的菜品推出时,进行及时的添加,为消费者提供更多选择。

软件对菜品的分类给与明确的选择,给用户提供便利。

如图2-7:图2-73编码3.1镜像显示public class MyMirrorGalleryActivity extends Activity{public MyMirrorGallery gallery;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.my_gallery);//Action BarActionBar actionBar = getActionBar();actionBar.setDisplayHomeAsUpEnabled(true);actionBar.setDisplayShowHomeEnabled(true);actionBar.hide();actionBar.show(); //---show it again---gallery=(MyMirrorGallery)findViewById(R.id.Mygallery);gallery.setAdapter(new MyAdapter(this));}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {super.onCreateOptionsMenu(menu);CreateMenu(menu);return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item){return MenuChoice(item);}private void CreateMenu(Menu menu){MenuItem mnu1 = menu.add(0, 0, 0, "详情显示");{mnu1.setIcon(R.drawable.ic_launcher);mnu1.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |MenuItem.SHOW_AS_ACTION_WITH_TEXT);}MenuItem mnu2 = menu.add(0, 1, 1, "软件所有权");{mnu2.setIcon(R.drawable.ic_launcher);mnu2.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |MenuItem.SHOW_AS_ACTION_WITH_TEXT);}MenuItem mnu3 = menu.add(0, 2, 2, "使用说明");{mnu3.setIcon(R.drawable.ic_launcher);mnu3.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |MenuItem.SHOW_AS_ACTION_WITH_TEXT);}}private boolean MenuChoice(MenuItem item){switch (item.getItemId()) {case android.R.id.home:Toast.makeText(this,"You clicked on the Application icon",Toast.LENGTH_LONG).show();Intent i = new Intent(this, MyMirrorGalleryActivity.class);i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);startActivity(i);return true;case 0:Intent i2 = new Intent(this, MenuActivity.class);i2.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);startActivity(i2);return true;case 1:Toast.makeText(this, "软件说明:",Toast.LENGTH_LONG).show();new AlertDialog.Builder(MyMirrorGalleryActivity.this).setTitle("软件说明:").setMessage("软件著作:***\n适用范围:所有爱好美食的人\n" ).setPositiveButton("确定", null).show();return true;case 2:Toast.makeText(this, "使用说明",Toast.LENGTH_LONG).show();new AlertDialog.Builder(MyMirrorGalleryActivity.this).setTitle("使用说明:").setMessage("使用方法:\n 1.选择食物类型;\n 2.查看食物\n 3.选择心仪的菜品\n" ).setPositiveButton("确定", null).show();return true;}return false;}}3.2添加菜品public class AddFoodActivity extends Activity {protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.addfood);Spinner();Button btn_save=(Button) findViewById(R.id.btn_save);btn_save.setOnClickListener(new OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubEditText editText1_foodname=(EditText) findViewById(R.id.editText1_foodname);//EditText spinner1=(EditText) findViewById(R.id.spinner1);Spinner spinnerGroup = (Spinner) findViewById(R.id.spinner1);EditText editText1_describe=(EditText) findViewById(R.id.editText1_describe);String foodname=editText1_foodname.getText().toString();//String editspinner1=spinner1.getText().toString();String classification = spinnerGroup.getSelectedItem().toString();String describe=editText1_describe.getText().toString();FoodMenu food=new FoodMenu(foodname, describe, classification);MenuService dbOpenHelper=new MenuService(AddFoodActivity.this);dbOpenHelper.add(food);//修改Intent i = new Intent(AddFoodActivity.this, MenuActivity.class);i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);startActivity(i);finish();}});}public boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.add_food, menu);return true;}public boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();if (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);}private void Spinner(){//分组Spinner填充ArrayList<String> group = new ArrayList<String>();group.add("粥品");group.add("派和糕点");group.add("膨化食品");group.add("酱菜辅料");group.add("敢爱敢做");group.add("饼干");//创建适配器ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,yout.item_spinner,R.id.item_style,group);//获得控件对象Spinner groupSpinner = (Spinner) this.findViewById(R.id.spinner1);//设置spinner对象的数据适配器groupSpinner.setAdapter(adapter);groupSpinner.setPrompt("食物分类");}}3.3菜谱显示public class MenuActivity extends Activity{private ArrayList<CheckBox> checkBox = new ArrayList<CheckBox>();private boolean[] hasChecked;private ListView listView;private RatingBar ratBar;private android.widget.SimpleAdapter adapter;private List<Map<String, Object>> listItems;private Integer[] imgid = {R.drawable.p1,R.drawable.p2, R.drawable.p3,R.drawable.p4, R.drawable.p5,};private CheckBox check;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//去除标题//this.requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(yout.showfood);//Action BarActionBar actionBar = getActionBar();actionBar.setDisplayHomeAsUpEnabled(true);actionBar.setDisplayShowHomeEnabled(true);actionBar.show(); //---show it again---//获得搜索按钮对象ImageButton searchbtn = (ImageButton) findViewById(R.id.searchbtn);//searchButton注册监听事件searchbtn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubEditText searchtext = (EditText) findViewById(R.id.editTextSearch);String name = searchtext.getText().toString();MenuService ms = new MenuService(MenuActivity.this);ArrayList<HashMap<String,Object>> data1 = new ArrayList<HashMap<String,Object>>();List<FoodMenu> list = ms.QueryAllData();for(FoodMenu foodmenu:list){foodmenu.getName().toString();if(name.equals(foodmenu.getName().toString())){HashMap<String,Object> foodMap = new HashMap<String,Object>();foodMap.put("num",foodmenu.getNum());foodMap.put("name",foodmenu.getName());foodMap.put("classification",foodmenu.getClassification());foodMap.put("describe",foodmenu.getDescribe());data1.add(foodMap);}}int a[]=new int []{no,foodname,classification,R.id.bdetail};adapter = new android.widget.SimpleAdapter(MenuActivity.this.getApplicationContext(), data1, yout.list_item2, new String[]{"num","name","classification","describe"}, a);listView=(ListView) findViewById(R.id.listview);listView.setTextFilterEnabled(true);//将listView控件和adapter绑定listView.setAdapter(adapter);listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> adapterView, View view,int position, long id) {// TODO Auto-generated method stubHashMap<String,Object> itemMap = (HashMap<String, Object>)adapterView.getItemAtPosition(position);int num = (Integer) itemMap.get("num");String foodName = (String) itemMap.get("foodName");String foodClassification = (String) itemMap.get("foodClassificatoin");String describe = (String) itemMap.get("describe");FoodMenu foodm = new FoodMenu();foodm.setNum(num);foodm.setName(foodName);foodm.setClassification(foodClassification);foodm.setDescribe(describe);Intent intent = new Intent();intent.putExtra("food", foodm);intent.setClass(MenuActivity.this, ShowInfoActivity.class);MenuActivity.this.startActivity(intent);}});}});MenuService ms = new MenuService(this);//查询所有的菜品List<FoodMenu> list = ms.QueryAllData();//创建一个ArrayList集合,用于存放拥有food信息的MAP集合ArrayList<HashMap<String,Object>> data = new ArrayList<HashMap<String,Object>>();for(FoodMenu foodmenu:list){HashMap<String,Object> foodMap = new HashMap<String,Object>();foodMap.put("num",foodmenu.getNum());foodMap.put("name",foodmenu.getName());foodMap.put("classification",foodmenu.getClassification());foodMap.put("describe",foodmenu.getDescribe());data.add(foodMap);}int a[]=new int []{no,foodname,classification,R.id.bdetail};adapter = new android.widget.SimpleAdapter(this.getApplicationContext(), data, yout.list_item2, new String[]{"num","name","classification","describe"}, a);listView=(ListView) findViewById(R.id.listview);listView.setTextFilterEnabled(true);//将listView控件和adapter绑定listView.setAdapter(adapter);listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> adapterView, View view,int position, long id) {// TODO Auto-generated method stubHashMap<String,Object> itemMap = (HashMap<String, Object>)adapterView.getItemAtPosition(position);int num = (Integer) itemMap.get("num");String foodName = (String) itemMap.get("foodName");String foodClassification = (String) itemMap.get("foodClassificatoin");String describe = (String) itemMap.get("describe");FoodMenu foodm = new FoodMenu();foodm.setNum(num);foodm.setName(foodName);foodm.setClassification(foodClassification);foodm.setDescribe(describe);Intent intent = new Intent();intent.putExtra("food", foodm);intent.setClass(MenuActivity.this, ShowInfoActivity.class);MenuActivity.this.startActivity(intent);}});check =(CheckBox) findViewById(R.id.check_item);check.setOnCheckedChangeListener(new CheckBox.OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {//记录食品选中状态if(isChecked){MenuService ms = new MenuService(MenuActivity.this);ms.delete(listView.getCheckedItemPosition());}}});}4测试1、模块测试主界面、菜品图片显示界面,菜品信息显示界面,添加界面等之间的跳转是否正常,界面之间的衔接是否合理。

相关文档
最新文档