基于Android平台的菜谱实现.docx

上传人:b****2 文档编号:12644580 上传时间:2023-04-21 格式:DOCX 页数:21 大小:923.98KB
下载 相关 举报
基于Android平台的菜谱实现.docx_第1页
第1页 / 共21页
基于Android平台的菜谱实现.docx_第2页
第2页 / 共21页
基于Android平台的菜谱实现.docx_第3页
第3页 / 共21页
基于Android平台的菜谱实现.docx_第4页
第4页 / 共21页
基于Android平台的菜谱实现.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

基于Android平台的菜谱实现.docx

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

基于Android平台的菜谱实现.docx

基于Android平台的菜谱实现

基于Android平台的菜谱实现

1需求分析

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

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

但是,这种点菜方式存在诸多弊端:

从消费者角度来讲,菜谱不能及时更新,导致菜谱信息陈旧,点菜时经常出现某菜品已下架等情况。

用户需求:

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

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

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

功能需求:

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

2功能实现

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

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

2.1主界面

1、实现了对菜品的具体分类。

如图2-1

图2-1

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

如图2-2

图2-2

2、是进入菜品显示的入口,同时也显示了该软件的使用方法如图2-3:

图2-3

2.2菜谱显示界面

1、该类菜品中所有菜品的具体展示,菜品名称、菜品分类、菜品描述、菜品编号、以及菜品的星级评价,单选或多选菜品。

如图2-4:

图2-4

2、搜索菜品

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

如图2-5

图2-5

3、对菜品进行添加

4、删除菜品

当菜品长时间被消费者冷落,或者有不想再推出的菜品时,进行及时的删除。

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

如图2-6:

图2-6

2.3菜品添加界面

当有新的菜品推出时,进行及时的添加,为消费者提供更多选择。

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

如图2-7:

图2-7

3编码

3.1镜像显示

publicclassMyMirrorGalleryActivityextendsActivity{

publicMyMirrorGallerygallery;

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.my_gallery);

//ActionBar

ActionBaractionBar=getActionBar();

actionBar.setDisplayHomeAsUpEnabled(true);

actionBar.setDisplayShowHomeEnabled(true);

actionBar.hide();

actionBar.show();//---showitagain---

gallery=(MyMirrorGallery)findViewById(R.id.Mygallery);

gallery.setAdapter(newMyAdapter(this));

}

@Override

publicbooleanonCreateOptionsMenu(Menumenu){

super.onCreateOptionsMenu(menu);

CreateMenu(menu);

returntrue;

}

@Override

publicbooleanonOptionsItemSelected(MenuItemitem)

{

returnMenuChoice(item);

}

privatevoidCreateMenu(Menumenu)

{

MenuItemmnu1=menu.add(0,0,0,"详情显示");

{

mnu1.setIcon(R.drawable.ic_launcher);

mnu1.setShowAsAction(

MenuItem.SHOW_AS_ACTION_NEVER|

MenuItem.SHOW_AS_ACTION_WITH_TEXT);

}

MenuItemmnu2=menu.add(0,1,1,"软件所有权");

{

mnu2.setIcon(R.drawable.ic_launcher);

mnu2.setShowAsAction(

MenuItem.SHOW_AS_ACTION_NEVER|

MenuItem.SHOW_AS_ACTION_WITH_TEXT);

}

MenuItemmnu3=menu.add(0,2,2,"使用说明");

{

mnu3.setIcon(R.drawable.ic_launcher);

mnu3.setShowAsAction(

MenuItem.SHOW_AS_ACTION_NEVER|

MenuItem.SHOW_AS_ACTION_WITH_TEXT);

}

}

privatebooleanMenuChoice(MenuItemitem)

{

switch(item.getItemId()){

caseandroid.R.id.home:

Toast.makeText(this,

"YouclickedontheApplicationicon",

Toast.LENGTH_LONG).show();

Intenti=newIntent(this,MyMirrorGalleryActivity.class);

i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(i);

returntrue;

case0:

Intenti2=newIntent(this,MenuActivity.class);

i2.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(i2);

returntrue;

case1:

Toast.makeText(this,"软件说明:

",

Toast.LENGTH_LONG).show();

newAlertDialog.Builder(MyMirrorGalleryActivity.this)

.setTitle("软件说明:

")

.setMessage("软件著作:

***\n适用范围:

所有爱好美食的人\n")

.setPositiveButton("确定",null)

.show();

returntrue;

case2:

Toast.makeText(this,"使用说明",

Toast.LENGTH_LONG).show();

newAlertDialog.Builder(MyMirrorGalleryActivity.this)

.setTitle("使用说明:

")

.setMessage("使用方法:

\n1.选择食物类型;\n2.查看食物\n3.选择心仪的菜品\n")

.setPositiveButton("确定",null)

.show();

returntrue;

}

returnfalse;

}

}

3.2添加菜品

publicclassAddFoodActivityextendsActivity{

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.addfood);

Spinner();

Buttonbtn_save=(Button)findViewById(R.id.btn_save);

btn_save.setOnClickListener(newOnClickListener(){

publicvoidonClick(Viewv){

//TODOAuto-generatedmethodstub

EditTexteditText1_foodname=(EditText)findViewById(R.id.editText1_foodname);

//EditTextspinner1=(EditText)findViewById(R.id.spinner1);

SpinnerspinnerGroup=(Spinner)findViewById(R.id.spinner1);

EditTexteditText1_describe=(EditText)findViewById(R.id.editText1_describe);

Stringfoodname=editText1_foodname.getText().toString();

//Stringeditspinner1=spinner1.getText().toString();

Stringclassification=spinnerGroup.getSelectedItem().toString();

Stringdescribe=editText1_describe.getText().toString();

FoodMenufood=newFoodMenu(foodname,describe,classification);

MenuServicedbOpenHelper=newMenuService(AddFoodActivity.this);

dbOpenHelper.add(food);

//修改

Intenti=newIntent(AddFoodActivity.this,MenuActivity.class);

i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity(i);

finish();

}

});

}

publicbooleanonCreateOptionsMenu(Menumenu){

//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.

getMenuInflater().inflate(R.menu.add_food,menu);

returntrue;

}

publicbooleanonOptionsItemSelected(MenuItemitem){

//Handleactionbaritemclickshere.Theactionbarwill

//automaticallyhandleclicksontheHome/Upbutton,solong

//asyouspecifyaparentactivityinAndroidManifest.xml.

intid=item.getItemId();

if(id==R.id.action_settings){

returntrue;

}

returnsuper.onOptionsItemSelected(item);

}

privatevoidSpinner(){

//分组Spinner填充

ArrayListgroup=newArrayList();

group.add("粥品");

group.add("派和糕点");

group.add("膨化食品");

group.add("酱菜辅料");

group.add("敢爱敢做");

group.add("饼干");

//创建适配器

ArrayAdapteradapter=newArrayAdapter(this,R.layout.item_spinner,R.id.item_style,group);

//获得控件对象

SpinnergroupSpinner=(Spinner)this.findViewById(R.id.spinner1);

//设置spinner对象的数据适配器

groupSpinner.setAdapter(adapter);

groupSpinner.setPrompt("食物分类");

}

}

3.3菜谱显示

publicclassMenuActivityextendsActivity{

privateArrayListcheckBox=newArrayList();

privateboolean[]hasChecked;

privateListViewlistView;

privateRatingBarratBar;

privateandroid.widget.SimpleAdapteradapter;

privateList>listItems;

privateInteger[]imgid={R.drawable.p1,

R.drawable.p2,R.drawable.p3,

R.drawable.p4,R.drawable.p5,

};

privateCheckBoxcheck;

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

//去除标题

//this.requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.showfood);

//ActionBar

ActionBaractionBar=getActionBar();

actionBar.setDisplayHomeAsUpEnabled(true);

actionBar.setDisplayShowHomeEnabled(true);

actionBar.show();//---showitagain---

//获得搜索按钮对象

ImageButtonsearchbtn=(ImageButton)findViewById(R.id.searchbtn);

//searchButton注册监听事件

searchbtn.setOnClickListener(newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

//TODOAuto-generatedmethodstub

EditTextsearchtext=(EditText)findViewById(R.id.editTextSearch);

Stringname=searchtext.getText().toString();

MenuServicems=newMenuService(MenuActivity.this);

ArrayList>data1=newArrayList>();

Listlist=ms.QueryAllData();

for(FoodMenufoodmenu:

list){

foodmenu.getName().toString();

if(name.equals(foodmenu.getName().toString())){

HashMapfoodMap=newHashMap();

foodMap.put("num",foodmenu.getNum());

foodMap.put("name",foodmenu.getName());

foodMap.put("classification",foodmenu.getClassification());

foodMap.put("describe",foodmenu.getDescribe());

data1.add(foodMap);

}

}

inta[]=newint[]{R.id.tvno,R.id.tvfoodname,R.id.tvclassification,R.id.bdetail};

adapter=newandroid.widget.SimpleAdapter(MenuActivity.this.getApplicationContext(),data1,R.layout.list_item2,newString[]{"num","name","classification","describe"},a);

listView=(ListView)findViewById(R.id.listview);

listView.setTextFilterEnabled(true);

//将listView控件和adapter绑定

listView.setAdapter(adapter);

listView.setOnItemClickListener(newAdapterView.OnItemClickListener(){

@Override

publicvoidonItemClick(AdapterView

>adapterView,Viewview,

intposition,longid){

//TODOAuto-generatedmethodstub

HashMapitemMap=(HashMap)adapterView.getItemAtPosition(position);

intnum=(Integer)itemMap.get("num");

StringfoodName=(String)itemMap.get("foodName");

StringfoodClassification=(String)itemMap.get("foodClassificatoin");

Stringdescribe=(String)itemMap.get("describe");

FoodMenufoodm=newFoodMenu();

foodm.setNum(num);

foodm.setName(foodName);

foodm.setClassification(foodClassification);

foodm.setDescribe(describe);

Intentintent=newIntent();

intent.putExtra("food",foodm);

intent.setClass(MenuActivity.this,ShowInfoActivity.class);

MenuActivity.this.startActivity(intent);

}

});

}

});

MenuServicems=newMenuService(this);

//查询所有的菜品

Listlist=ms.QueryAllData();

//创建一个ArrayList集合,用于存放拥有food信息的MAP集合

ArrayList>data=newArrayList>();

for(FoodMenufoodmenu:

list){

HashMapfoodMap=newHashMap();

foodMap.put("num",foodmenu.getNum());

foodMap.put("name",foodmenu.getName());

foodMap.put("classification",foodmenu.getClassification());

foodMap.put("describe",foodmenu.getDescribe());

data.add(foodMap);

}

inta[]=newint[]{R.id.tvno,R.id.tvfoodname,R.id.tvclassification,R.id.bdetail};

adapter=newandroid.widget.SimpleAdapter(this.getApplicationContext(),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 节日庆典

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

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