一 项目概述
菜谱APP或者食谱APP 是基于安卓开发的一个APP,项目包含前台安卓端和后台管理系统,前台安卓端可以进行 查看推荐菜谱,菜谱搜索,收藏菜品 ,菜品排行榜,菜品详情,个人中心,基本信息,登录,注册等功能,后台管理系统主要维护菜品,维护前台注册的用户。东西非常多。
二 项目开发工具和技术
开发工具使用android studio
后台服务开发 idea或者eclipse
模拟器:逍遥 夜神或者雷电模拟器
三 项目功能结构图
四 项目开发实现
菜谱首页效果:
首页包含顶部导航,菜品分类 , 推荐菜品 , 左侧菜单 。整个APP项目内容很多,有前台 ,有后台管理系统 需要答疑 或者 咨询 加 q q 3779 05687
核心布局:
<androidx.drawerlayout.widget.DrawerLayout
xmlns:android="http://schemas.android/apk/res/android"
xmlns:app="http://schemas.android/apk/res-auto"
xmlns:tools="http://schemas.android/tools"
android:layout_width="match_parent"
android:id="@+id/DrawerLayout"
android:clickable="true"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:context=".activity.MainActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:id="@+id/topLayout"
android:orientation="vertical"
android:background="#188e9a"
>
<ImageView
android:id="@+id/leftMenuIv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:src="@mipmap/menus"></ImageView>
<TextView
android:layout_toRightOf="@+id/leftMenuIv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="菜谱APP"
android:layout_centerVertical="true"
android:textColor="#FF9900"
android:textSize="25sp"></TextView>
<!--菜单按钮-->
<Button
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/btn_menu"
android:layout_alignParentRight="true"
android:onClick="OnMenu"
android:layout_centerVertical="true"
android:background="@drawable/add"></Button>
</RelativeLayout>
</DrawerLayout>
左侧菜单
核心实现代码:
switch (v.getId()) {
case R.id.leftMenuIv:
drawerLayout.openDrawer(leftlayout);
break;
case R.id.main_mycenter:
//个人中心
drawerLayout.closeDrawer(leftlayout);
CommonUtils.navigateTo(MainActivity.this,MyActivity.class);
break;
case R.id.main_mysc:
//我的收藏
drawerLayout.closeDrawer(leftlayout);
CommonUtils.navigateTo(MainActivity.this,MyScFoodActivity.class);
break;
case R.id.main_rank:
//我的排行榜
drawerLayout.closeDrawer(leftlayout);
CommonUtils.navigateTo(MainActivity.this,RankActivity.class);
break;
case R.id.f1tv:
bundle.putString("foodType", "1");
//早餐
CommonUtils.navigateTo(MainActivity.this,FoodsActivity.class,bundle);
break;
case R.id.f2tv:
bundle.putString("foodType", "2");
//午餐
CommonUtils.navigateTo(MainActivity.this,FoodsActivity.class,bundle);
break;
case R.id.f3tv:
bundle.putString("foodType", "3");
//晚餐
CommonUtils.navigateTo(MainActivity.this,FoodsActivity.class,bundle);
break;
case R.id.f4tv:
bundle.putString("foodType", "4");
//水果和甜点
CommonUtils.navigateTo(MainActivity.this,FoodsActivity.class,bundle);
break;
case R.id.f5tv:
bundle.putString("foodType", "5");
//全部
CommonUtils.navigateTo(MainActivity.this,FoodsActivity.class,bundle);
break;
}
整个项目内容很多,有前台 有后台管理系统 需要答疑 或者 咨询 加 q q 3779 05687
菜品排行榜: 访问量高的菜品 优先排在最前面。
核心代码:
设置前三个背景
if(getItemId(position+1)==1L){
Drawable drawable = mContext.getResources().getDrawable(R.mipmap.rank1);
vh.rank_id.setBackground(drawable);
}else if(getItemId(position+1)==2L){
Drawable drawable = mContext.getResources().getDrawable(R.mipmap.rank2);
vh.rank_id.setBackground(drawable);
}else if(getItemId(position+1)==3L){
Drawable drawable = mContext.getResources().getDrawable(R.mipmap.rank3);
vh.rank_id.setBackground(drawable);
}else{
Drawable drawable = mContext.getResources().getDrawable(R.mipmap.rankother);
vh.rank_id.setText((position+1)+"");
vh.rank_id.setTextSize(30);
vh.rank_id.setGravity(Gravity.CENTER);
vh.rank_id.setBackground(drawable);
}
vh.rank_name.setText(bean.getFoodName());
vh.rank_viewnum.setText(bean.getViewnum()+"");
感恩有您的阅读,少些抱怨,多些笑容, 祝愿您的生活灿烂如花 !!!
更多推荐
基于安卓android studio 的 菜谱食谱APP设计
发布评论