首页、支付功能

This commit is contained in:
2025-11-26 18:57:53 +08:00
parent 60b712f216
commit 88179e27b7
64 changed files with 3380 additions and 319 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:width="29dp" android:height="100dp">
<shape android:shape="rectangle">
<corners android:radius="15dp"/>
<solid android:color="#FFE7EFF8"/>
</shape>
</item>
<item android:width="13dp" android:height="84dp" android:gravity="center">
<shape android:shape="rectangle">
<corners android:radius="7dp"/>
<solid android:color="@color/white"/>
</shape>
</item>
</layer-list>
+2 -5
View File
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#fff8f8f8" />
<solid android:color="#FFF5F6F8" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp"
android:topLeftRadius="12dp"
android:topRightRadius="12dp" />
android:radius="43dp" />
</shape>
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FFF97443"/>
<corners android:radius="10dp"/>
</shape>
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FFFB8AB0"/>
<corners android:radius="10dp"/>
</shape>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FF49C4F1"/>
<corners android:radius="10dp"/>
</shape>
@@ -3,5 +3,5 @@
android:shape="rectangle">
<solid android:color="@color/white"/>
<stroke android:width="2dp" android:color="#FFC4CFDA"/>
<corners android:radius="50dp"/>
<corners android:radius="45dp"/>
</shape>
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ffdcdcdc" />
<solid android:color="#FFB1B1C0" />
<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp" />
android:radius="4dp" />
</shape>
+2 -2
View File
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:width="294dp" android:height="60dp">
<item android:width="196dp" android:height="40dp">
<shape android:shape="rectangle">
<stroke android:width="2dp" android:color="#FFFF3232"/>
<!-- <corners android:topRightRadius="6dp" android:bottomRightRadius="6dp"/>-->
<corners android:radius="6dp"/>
</shape>
</item>
<item android:gravity="start">
<item android:gravity="start" android:height="40dp" android:width="67dp">
<bitmap android:src="@drawable/ic_vip_level"/>
</item>
</layer-list>
+27 -19
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -19,18 +20,18 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="32dp"
android:layout_marginStart="28dp"
android:textColor="#ff0a1428"
android:textSize="30sp"
android:textSize="26sp"
android:textStyle="bold"
tools:text="2025年11月11日 周二" />
<ImageView
android:id="@+id/ivSetting"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_width="58dp"
android:layout_height="58dp"
android:layout_gravity="end|center_vertical"
android:layout_marginEnd="22dp"
android:layout_marginEnd="18dp"
android:padding="10dp"
android:src="@drawable/ic_setting"
tools:ignore="ContentDescription" />
@@ -55,19 +56,20 @@
<TextView
android:id="@+id/tv_food_name"
style="@style/text_title_blob"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="130dp"
android:layout_marginTop="60dp"
android:textStyle="bold"
android:textSize="52sp"
android:textColor="#FF0A1428"
android:text="羊肉臊子荞面饸饹" />
<FrameLayout
android:id="@+id/foodDisplayLayout"
android:layout_width="match_parent"
android:layout_height="531dp"
android:layout_marginHorizontal="60dp"
android:layout_marginTop="110dp"
android:layout_marginBottom="90dp"
android:layout_height="500dp"
android:layout_marginHorizontal="28dp"
android:layout_marginTop="100dp"
android:visibility="visible">
<androidx.camera.view.PreviewView
@@ -86,7 +88,7 @@
<View
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="30dp"
android:layout_margin="27dp"
android:background="@drawable/preview_border" />
</FrameLayout>
@@ -94,7 +96,12 @@
android:id="@+id/recyclerview"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginHorizontal="60dp"
app:spanCount="2"
tools:itemCount="8"
tools:listitem="@layout/list_item_search_food"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
android:layout_marginHorizontal="14dp"
android:layout_marginTop="42dp"
android:layout_weight="1" />
<LinearLayout
@@ -130,13 +137,14 @@
android:id="@+id/tv_to_search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:layout_marginBottom="60dp"
android:layout_marginTop="38dp"
android:layout_marginBottom="54dp"
android:padding="10dp"
android:text="以上都不是,手动搜索"
android:textStyle="bold"
android:textColor="#FFFF3232"
android:textSize="36sp" />
android:textSize="31sp"
android:visibility="gone"/>
<FrameLayout
android:id="@+id/flPay"
@@ -148,11 +156,11 @@
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btnPay"
android:layout_width="match_parent"
android:layout_margin="32dp"
android:layout_height="100dp"
android:layout_margin="28dp"
android:layout_height="87dp"
android:textStyle="bold"
android:text="去结算"
android:textSize="40sp"
android:textSize="35sp"
android:background="@drawable/bg_btn_save"
android:textColor="@color/white"/>
+38 -27
View File
@@ -1,63 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/bottom_sheet_layout"
android:layout_width="match_parent"
android:layout_height="1000dp"
android:layout_height="900dp"
android:background="@drawable/bottom_sheet_background"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingHorizontal="60dp"
android:paddingTop="30dp"
android:paddingBottom="0dp">
android:orientation="vertical">
<View
android:id="@+id/view_close"
android:layout_width="90dp"
android:layout_height="10dp"
android:layout_width="78dp"
android:layout_height="9dp"
android:layout_marginTop="28dp"
android:background="@drawable/view_shape_point" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="46dp"
android:layout_marginTop="41dp"
android:text="菜品检索"
android:textColor="#ff333333"
android:textSize="36sp" />
android:textStyle="bold"
android:textColor="#FF0A1428"
android:textSize="31sp" />
<LinearLayout
<FrameLayout
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_marginTop="50dp"
android:layout_height="87dp"
android:layout_marginTop="56dp"
android:layout_marginHorizontal="28dp"
android:background="@drawable/bg_search"
android:gravity="center_vertical"
android:orientation="horizontal">
<EditText
android:id="@+id/et_search"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="32dp"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingHorizontal="40dp"
android:background="@null"
android:hint="输入菜品名称"
android:imeOptions="actionSearch"
android:maxLines="1"
android:textStyle="bold"
android:inputType="text"
android:textColor="#333333"
android:textColorHint="#ffc8c8c8"
android:textSize="36sp" />
android:textColor="#FF0A1428"
android:textColorHint="#FFB1B1C0"
android:textSize="31sp" />
<ImageView
android:id="@+id/iv_search"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="30dp"
android:src="@drawable/ic_search" />
</LinearLayout>
android:layout_width="100dp"
android:layout_height="85dp"
android:paddingStart="25dp"
android:paddingEnd="40dp"
android:layout_gravity="end|center_vertical"
android:src="@drawable/ic_search2" />
</FrameLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerview"
android:layout_width="match_parent"
android:layout_height="700dp"
android:layout_marginTop="50dp" />
android:layout_height="match_parent"
android:minHeight="500dp"
android:layout_marginTop="42dp"
android:layout_marginBottom="20dp"
android:layout_marginHorizontal="14dp"
app:spanCount="2"
tools:itemCount="12"
tools:listitem="@layout/list_item_search_food"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"/>
</LinearLayout>
@@ -11,6 +11,7 @@
android:layout_height="wrap_content"
android:background="@drawable/setting_border"
android:orientation="vertical"
android:layout_marginHorizontal="32dp"
android:paddingHorizontal="32dp"
android:paddingTop="35dp"
android:paddingBottom="42dp">
@@ -73,6 +74,7 @@
android:background="@drawable/setting_border"
android:orientation="vertical"
android:paddingHorizontal="32dp"
android:layout_marginHorizontal="32dp"
android:paddingTop="35dp"
android:paddingBottom="42dp">
@@ -177,4 +179,20 @@
</LinearLayout>
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btnConfirm"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_marginHorizontal="32dp"
android:layout_marginBottom="48dp"
android:text="确定"
android:background="@drawable/bg_btn_save"
android:textColor="@color/white"
android:textSize="40sp" />
</LinearLayout>
+2 -1
View File
@@ -22,7 +22,7 @@
android:layout_marginStart="32dp"
android:layout_marginTop="35dp"
android:drawablePadding="17dp"
android:text="计费设置"
android:text="餐品采集"
android:textColor="@color/black"
android:textSize="36sp"
android:textStyle="bold"
@@ -139,6 +139,7 @@
android:background="@drawable/setting_border_gray3"
android:gravity="center_vertical"
android:hint="输入菜品名称"
android:inputType="text"
android:imeOptions="actionSearch"
android:maxLines="1"
android:paddingStart="47dp"
@@ -30,16 +30,16 @@
android:id="@+id/ivFacePhoto"
android:layout_width="match_parent"
android:layout_height="510dp"
android:src="@mipmap/ic_launcher"
android:scaleType="centerCrop"
tools:ignore="ContentDescription" />
tools:ignore="ContentDescription"
tools:src="@mipmap/ic_launcher" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:adjustViewBounds="true"
android:src="@drawable/face_mask"
android:layout_gravity="bottom"
tools:ignore="ContentDescription" />
<TextView
@@ -6,26 +6,6 @@
android:gravity="center"
android:orientation="vertical">
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/vip_level"/>
<TextView
android:layout_width="200dp"
android:layout_height="60dp"
android:textColor="#FFFF3232"
android:textSize="30sp"
android:textStyle="bold"
android:gravity="center"
android:includeFontPadding="false"
android:layout_gravity="end|center_vertical"
android:text="6.80 元/份"/>
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -56,12 +56,12 @@
app:layout_constraintTop_toBottomOf="@id/tvUserName"
tools:text="138****8000" />
<com.google.android.material.divider.MaterialDivider
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="32dp"
app:dividerColor="#FFDBE5FB"
android:background="#FFDBE5FB"
app:layout_constraintTop_toBottomOf="@id/ivHeadPic" />
<TextView
@@ -31,16 +31,16 @@
android:layout_width="310dp"
android:layout_height="310dp"
android:layout_marginTop="64dp"
tools:src="@drawable/ic_qrcode"
tools:ignore="ContentDescription" />
tools:ignore="ContentDescription"
tools:src="@drawable/ic_qrcode" />
<TextView
android:id="@+id/tvPayResult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="64dp"
tools:text="待支付(60s)..."
android:textColor="#ff5e7585"
android:textSize="30sp"
android:textStyle="bold" />
android:textStyle="bold"
tools:text="待支付(60s)..." />
</LinearLayout>
@@ -0,0 +1,300 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/cl_nutritionData"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:visibility="visible">
<TextView
android:id="@+id/tv_user_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
android:layout_marginTop="33dp"
android:layout_marginStart="41dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="夏*秋" />
<TextView
android:id="@+id/tv_recommend_heat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
android:layout_marginEnd="41dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/tv_user_name"
app:layout_constraintBottom_toBottomOf="@id/tv_user_name"
tools:text="推荐热量:680kcal" />
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="33dp"
android:layout_marginHorizontal="28dp"
android:background="#FF5E7585"
app:layout_constraintTop_toBottomOf="@id/tv_user_name" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="465dp"
app:layout_constraintTop_toBottomOf="@id/divider"
android:paddingBottom="60dp"
android:orientation="horizontal">
<Space
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1"/>
<!-- 热量 -->
<androidx.constraintlayout.widget.ConstraintLayout
style="@style/takeFoodLayoutNew">
<LinearLayout
android:id="@+id/kcalValueLayout"
style="@style/takeFoodWeightLayout"
app:layout_constraintBottom_toTopOf="@id/divKcalView"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<TextView
android:id="@+id/totalKcalTv"
style="@style/takeFoodValueTv"
android:textSize="24sp"
android:text="0" />
<TextView
style="@style/takeFoodValueTv"
android:text="千卡"
android:textSize="12sp" />
</LinearLayout>
<View
android:id="@+id/divKcalView"
android:layout_width="1dp"
android:layout_height="@dimen/dp30"
app:layout_constraintBottom_toTopOf="@id/customKcalColumn"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customKcalColumn"
android:layout_width="@dimen/dp130"
android:layout_height="0dp"
android:layout_marginBottom="6dp"
android:scaleType="fitXY"
android:src="@drawable/img_big_red_column"
app:layout_constraintBottom_toBottomOf="@id/imgKcal"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<ImageView
android:id="@+id/imgKcal"
android:layout_width="@dimen/dp107"
android:layout_height="@dimen/dp44"
android:scaleType="fitXY"
android:src="@drawable/ic_heat"
app:layout_constraintBottom_toTopOf="@id/kcalTv"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<TextView
android:id="@+id/kcalTv"
style="@style/takeFoodNameTv"
android:text="热量"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<Space
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.0"/>
<!-- 主食 -->
<androidx.constraintlayout.widget.ConstraintLayout style="@style/takeFoodLayoutNew">
<LinearLayout
android:id="@+id/foodValueLayout"
style="@style/takeFoodWeightLayout"
app:layout_constraintBottom_toTopOf="@id/divTotalFoodView"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<TextView
android:id="@+id/totalFoodTv"
style="@style/takeFoodValueTv"
android:text="0"
android:textSize="24sp"/>
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="12sp" />
</LinearLayout>
<View
android:id="@+id/divTotalFoodView"
android:layout_width="1dp"
android:layout_height="@dimen/dp30"
app:layout_constraintBottom_toTopOf="@id/customFoodColumn"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customFoodColumn"
style="@style/takeFoodCustomColumn"
app:layout_constraintBottom_toBottomOf="@id/imgFood"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<ImageView
android:id="@+id/imgFood"
style="@style/takeFoodImg"
android:src="@drawable/ic_staple_food"
app:layout_constraintBottom_toTopOf="@id/foodTv"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<TextView
android:id="@+id/foodTv"
style="@style/takeFoodNameTv"
android:text="主食"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<Space
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.0"/>
<!-- 果蔬 -->
<androidx.constraintlayout.widget.ConstraintLayout style="@style/takeFoodLayoutNew">
<LinearLayout
android:id="@+id/vegetableValueLayout"
style="@style/takeFoodWeightLayout"
app:layout_constraintBottom_toTopOf="@id/divVegetableView"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<TextView
android:id="@+id/totalVegetableTv"
style="@style/takeFoodValueTv"
android:text="0"
android:textSize="24sp" />
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="12sp" />
</LinearLayout>
<View
android:id="@+id/divVegetableView"
android:layout_width="1dp"
android:layout_height="@dimen/dp30"
app:layout_constraintBottom_toTopOf="@id/customVegetableColumn"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customVegetableColumn"
style="@style/takeFoodCustomColumn"
app:layout_constraintBottom_toBottomOf="@id/imgVegetable"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<ImageView
android:id="@+id/imgVegetable"
style="@style/takeFoodImg"
android:src="@drawable/ic_fruits_vegetables"
app:layout_constraintBottom_toTopOf="@id/vegetableTv"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<TextView
android:id="@+id/vegetableTv"
style="@style/takeFoodNameTv"
android:text="果蔬"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<Space
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.0"/>
<!-- 蛋肉 -->
<androidx.constraintlayout.widget.ConstraintLayout style="@style/takeFoodLayoutNew">
<LinearLayout
android:id="@+id/meatValueLayout"
style="@style/takeFoodWeightLayout"
app:layout_constraintBottom_toTopOf="@id/divMeatView"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<TextView
android:id="@+id/totalMeatTv"
style="@style/takeFoodValueTv"
android:text="0"
android:textSize="24sp" />
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="12sp" />
</LinearLayout>
<View
android:id="@+id/divMeatView"
android:layout_width="1dp"
android:layout_height="@dimen/dp30"
app:layout_constraintBottom_toTopOf="@id/customMeatColumn"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customMeatColumn"
style="@style/takeFoodCustomColumn2"
app:layout_constraintBottom_toBottomOf="@id/imgMeat"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<ImageView
android:id="@+id/imgMeat"
style="@style/takeFoodImg"
android:src="@drawable/ic_meat_eggs"
app:layout_constraintBottom_toTopOf="@id/meatTv"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<TextView
android:id="@+id/meatTv"
style="@style/takeFoodNameTv"
android:text="蛋肉"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<Space
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1"/>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -0,0 +1,178 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:layout_gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="热量"
android:layout_marginTop="65dp"
android:textColor="#ff5e7585"
android:textSize="24sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginVertical="15dp"
android:textColor="#ff0a1428"
android:textSize="40sp"
android:textStyle="bold"
tools:text="117" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff5e7585"
android:textSize="20sp"
android:textStyle="bold"
tools:text="kcal/100g" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginVertical="28dp"
android:layout_marginHorizontal="28dp"
android:background="#FFDBE5FB" />
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="154dp"
android:layout_marginHorizontal="80dp">
<LinearLayout
android:id="@+id/llFat"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_constraintEnd_toStartOf="@+id/llProtein"
app:layout_constraintHorizontal_chainStyle="spread"
app:layout_constraintStart_toStartOf="parent">
<TextView
android:id="@+id/tvFatRate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="13%"
android:textColor="#ff5e7585"
android:textSize="16sp" />
<FrameLayout
android:layout_width="29dp"
android:layout_height="100dp"
android:background="@drawable/bg_nutrition_rate">
<View
android:id="@+id/viewFatLine"
android:layout_width="13dp"
android:layout_height="19dp"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginBottom="12dp"
android:background="@drawable/rate_orange" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="脂肪"
android:textColor="#ff5e7585"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/llProtein"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_constraintEnd_toStartOf="@+id/llCarbohydrate"
app:layout_constraintStart_toEndOf="@id/llFat">
<TextView
android:id="@+id/tvProteinRate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="47%"
android:textColor="#ff5e7585"
android:textSize="16sp" />
<FrameLayout
android:layout_width="29dp"
android:layout_height="100dp"
android:background="@drawable/bg_nutrition_rate">
<View
android:id="@+id/viewProteinLine"
android:layout_width="13dp"
android:layout_height="48dp"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginBottom="12dp"
android:background="@drawable/rate_sky_blue" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="蛋白质"
android:textColor="#ff5e7585"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/llCarbohydrate"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/llProtein">
<TextView
android:id="@+id/tvCarbohydrateRate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="40%"
android:textColor="#ff5e7585"
android:textSize="16sp" />
<FrameLayout
android:layout_width="29dp"
android:layout_height="100dp"
android:background="@drawable/bg_nutrition_rate">
<View
android:id="@+id/viewCarbohydrateLine"
android:layout_width="13dp"
android:layout_height="41dp"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginBottom="12dp"
android:background="@drawable/rate_pink" />
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="碳水"
android:textColor="#ff5e7585"
android:textSize="16sp" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(所示营养数据为每百克含量)"
android:textColor="#ff889ac2"
android:layout_marginTop="56dp"
android:layout_marginBottom="27dp"
android:textSize="16sp" />
</LinearLayout>
@@ -33,12 +33,12 @@
app:layout_constraintStart_toEndOf="@id/tvFoodName"
android:src="@drawable/ic_close" />
<com.google.android.material.divider.MaterialDivider
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginHorizontal="30dp"
app:layout_constraintTop_toBottomOf="@id/tvFoodName"
app:dividerColor="#FFE6E6E6"/>
android:background="#FFE6E6E6"/>
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -8,8 +8,8 @@
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:layout_marginHorizontal="16dp"
android:layout_marginVertical="8dp"
android:layout_marginHorizontal="14dp"
android:layout_marginVertical="14dp"
android:paddingHorizontal="15dp"
android:textAlignment="center"
android:textColor="@color/color_search_food"
@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFE7EFF8">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:layout_margin="28dp"
android:background="@drawable/setting_border"
android:orientation="vertical">
<TextView
android:id="@+id/tvFoodName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FF0A1428"
android:layout_marginTop="210dp"
android:textSize="40sp"
android:textStyle="bold"
tools:text="岐山臊子面" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:text="应付金额"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/tvRealAmount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:textColor="#FFFF3232"
android:textSize="32sp"
android:textStyle="bold"
tools:text="¥36.80" />
<!-- <TextView-->
<!-- android:id="@+id/tvPayTip"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_marginTop="55dp"-->
<!-- android:text="请扫码支付或出示付款码"-->
<!-- android:textColor="#FF5E7585"-->
<!-- android:textSize="24sp"-->
<!-- android:textStyle="bold"-->
<!-- tools:ignore="HardcodedText" />-->
</LinearLayout>
</FrameLayout>
@@ -0,0 +1,136 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFE7EFF8"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="28dp"
android:layout_marginTop="28dp"
android:background="@drawable/setting_border"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingVertical="56dp">
<TextView
android:id="@+id/tvFoodName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FF0A1428"
android:textSize="40sp"
android:textStyle="bold"
tools:text="岐山臊子面" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:text="应付金额"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/tvRealAmount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:textColor="#FFFF3232"
android:textSize="32sp"
android:textStyle="bold"
tools:text="¥36.80" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="28dp"
android:background="@drawable/setting_border"
android:gravity="center_horizontal"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="79dp"
android:text="会员验证"
android:textColor="#ff0a1428"
android:textSize="27sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
<FrameLayout
android:id="@+id/flFace"
android:layout_width="match_parent"
android:layout_height="400dp"
android:layout_marginHorizontal="32dp"
android:layout_marginTop="56dp">
<TextureView
android:id="@+id/dual_camera_texture_preview_rgb"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible" />
<com.sw.plate.utils.arcface.FaceRectView
android:id="@+id/dual_camera_face_rect_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<!-- <ImageView-->
<!-- android:id="@+id/ivFaceRecMask"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_gravity="bottom"-->
<!-- android:adjustViewBounds="true"-->
<!-- android:src="@drawable/face_mask"-->
<!-- android:visibility="visible" />-->
<!-- <TextView-->
<!-- android:id="@+id/tvFaceTip"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_gravity="bottom|center"-->
<!-- android:layout_marginBottom="56dp"-->
<!-- android:text="请正视屏幕进行面部识别..."-->
<!-- android:textColor="@color/white"-->
<!-- android:textSize="24sp"-->
<!-- android:visibility="v" />-->
<FrameLayout
android:id="@+id/fl_recognize_ir"
android:layout_width="15dp"
android:layout_height="10dp"
android:layout_gravity="bottom"
android:visibility="visible">
<TextureView
android:id="@+id/dual_camera_texture_preview_ir"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<com.sw.plate.utils.arcface.FaceRectView
android:id="@+id/dual_camera_face_rect_view_ir"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
</FrameLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:text="请正视屏幕进行面部识别..."
android:textColor="#ff5e7585"
android:textSize="24sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
</LinearLayout>
</LinearLayout>
@@ -0,0 +1,249 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFE7EFF8"
android:orientation="vertical"
android:padding="28dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/setting_border"
android:orientation="vertical"
android:paddingBottom="28dp">
<TextView
android:id="@+id/tvFoodName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginVertical="60dp"
android:text="餐品识别中..."
android:textColor="#ff0a1428"
android:textSize="40sp"
android:textStyle="bold" />
<FrameLayout
android:id="@+id/flCameraView"
android:layout_width="match_parent"
android:layout_height="400dp"
android:layout_marginHorizontal="28dp"
android:visibility="visible">
<FrameLayout
android:id="@+id/flFace"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone">
<TextureView
android:id="@+id/dual_camera_texture_preview_rgb"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="visible" />
<com.sw.plate.utils.arcface.FaceRectView
android:id="@+id/dual_camera_face_rect_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ImageView
android:id="@+id/ivFaceRecMask"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:adjustViewBounds="true"
android:src="@drawable/face_mask"
android:visibility="gone" />
<TextView
android:id="@+id/tvFaceTip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:layout_marginBottom="56dp"
android:text="请正视屏幕进行面部识别..."
android:textColor="@color/white"
android:textSize="24sp"
android:visibility="gone" />
</FrameLayout>
<ImageView
android:id="@+id/ivPreviewImage"
android:layout_width="match_parent"
android:layout_height="400dp"
tools:background="@mipmap/ic_launcher"/>
<ImageView
android:id="@+id/ivRecImage"
android:layout_width="match_parent"
android:layout_height="400dp"
tools:background="@mipmap/ic_launcher"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="28dp"
android:background="@drawable/ic_camera_rect" />
</FrameLayout>
<LinearLayout
android:id="@+id/llPriceInfo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:layout_gravity="center_horizontal"
android:gravity="center_vertical"
android:visibility="gone">
<TextView
android:id="@+id/tvOldPrice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0a1428"
android:textSize="48sp"
android:textStyle="bold"
tools:text="36.80 元/份" />
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="40dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/vip_level" />
<TextView
android:id="@+id/tvVipPrice"
android:layout_width="134dp"
android:layout_height="40dp"
android:layout_gravity="end|center_vertical"
android:gravity="center"
android:includeFontPadding="false"
android:textColor="#FFFF3232"
android:textSize="20sp"
android:textStyle="bold"
tools:text="6.80 元/份" />
</FrameLayout>
</LinearLayout>
</LinearLayout>
<FrameLayout
android:id="@+id/flBottomView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="28dp"
android:background="@drawable/setting_border">
<TextView
android:id="@+id/tvFoodRecPrompt"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:shadowColor="#ffffffff"
android:shadowDx="0"
android:shadowDy="1"
android:shadowRadius="3.0"
android:text="先识别 后取餐"
android:textColor="#ffff3232"
android:textSize="80sp"
android:textStyle="bold"
android:layout_marginTop="42dp"
android:background="@drawable/setting_border" />
<include
android:id="@+id/calorieInclude"
layout="@layout/layout_user_calorie"
android:visibility="gone" />
<include
android:id="@+id/nutritionInclude"
layout="@layout/item_user_nutrition_new"
android:visibility="gone" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/llStandbyPage"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFE7EFF8"
android:orientation="vertical"
android:padding="28dp"
android:visibility="gone">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="640dp"
android:background="@drawable/setting_border"
android:orientation="vertical"
android:paddingBottom="28dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginVertical="60dp"
android:text="欢迎用餐"
android:textColor="#ff0a1428"
android:textSize="40sp"
android:textStyle="bold" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="28dp"
android:adjustViewBounds="true"
android:src="@drawable/placeholder_waiting" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="554dp"
android:gravity="center"
android:shadowColor="#ffffffff"
android:shadowDx="0"
android:shadowDy="1"
android:shadowRadius="3.0"
android:text="先识别 后取餐"
android:textColor="#ffff3232"
android:textSize="80sp"
android:textStyle="bold"
android:layout_marginTop="28dp"
android:background="@drawable/setting_border" />
</LinearLayout>
<FrameLayout
android:id="@+id/fl_recognize_ir"
android:layout_width="15dp"
android:layout_height="10dp"
android:layout_gravity="bottom"
android:visibility="visible">
<TextureView
android:id="@+id/dual_camera_texture_preview_ir"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<com.sw.plate.utils.arcface.FaceRectView
android:id="@+id/dual_camera_face_rect_view_ir"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
</FrameLayout>
@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFE7EFF8">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:layout_margin="28dp"
android:background="@drawable/setting_border"
android:orientation="vertical">
<TextView
android:id="@+id/tvFoodName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="210dp"
android:textColor="#FF0A1428"
android:textSize="40sp"
android:textStyle="bold"
tools:text="岐山臊子面" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:text="应付金额"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/tvRealAmount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="28dp"
android:textColor="#FFFF3232"
android:textSize="32sp"
android:textStyle="bold"
tools:text="¥36.80" />
<ImageView
android:id="@+id/ivPayQrCode"
android:layout_width="333dp"
android:layout_height="333dp"
android:layout_marginTop="56dp"
tools:ignore="ContentDescription"
tools:src="@drawable/ic_qrcode" />
<TextView
android:id="@+id/tvPayTip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="55dp"
android:text="请扫码支付或出示付款码"
android:textColor="#FF5E7585"
android:textSize="24sp"
android:textStyle="bold"
tools:ignore="HardcodedText" />
</LinearLayout>
</FrameLayout>
+5
View File
@@ -2,11 +2,16 @@
<resources>
<dimen name="bottom_sheet_height">1000dp</dimen>
<dimen name="sp11">11sp</dimen>
<dimen name="sp36">36sp</dimen>
<dimen name="sp18">18sp</dimen>
<dimen name="sp20">20sp</dimen>
<dimen name="sp30">30sp</dimen>
<dimen name="dp30">30dp</dimen>
<dimen name="dp10">10dp</dimen>
<dimen name="dp80">80dp</dimen>
<dimen name="dp87">87dp</dimen>
<dimen name="dp107">107dp</dimen>
<dimen name="dp44">44dp</dimen>
<dimen name="dp53">53dp</dimen>
<dimen name="dp130">130dp</dimen>
</resources>
+23 -6
View File
@@ -74,6 +74,13 @@
<item name="android:layout_weight">1</item>
</style>
<style name="takeFoodLayoutNew">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">match_parent</item>
<item name="android:gravity">bottom</item>
</style>
<!-- <item name="android:layout_weight">1</item>-->
<style name="takeFoodWeightLayout">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
@@ -86,12 +93,12 @@
<style name="takeFoodValueTv">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">@dimen/sp20</item>
<item name="android:textColor">#F0E6DC</item>
<item name="android:textSize">@dimen/sp36</item>
<item name="android:textColor">#FF0A1428</item>
</style>
<style name="takeFoodCustomColumn">
<item name="android:layout_width">@dimen/dp53</item>
<item name="android:layout_width">@dimen/dp80</item>
<item name="android:layout_height">0dp</item>
<item name="android:layout_centerHorizontal">true</item>
<!-- <item name="android:layout_marginBottom">-36dp</item>-->
@@ -100,6 +107,16 @@
<item name="android:src">@drawable/img_green_column</item>
</style>
<style name="takeFoodCustomColumn2">
<item name="android:layout_width">@dimen/dp80</item>
<item name="android:layout_height">0dp</item>
<item name="android:layout_centerHorizontal">true</item>
<!-- <item name="android:layout_marginBottom">-36dp</item>-->
<item name="android:scaleType">fitXY</item>
<item name="android:layout_marginBottom">6dp</item>
<item name="android:src">@drawable/img_red_column</item>
</style>
<style name="takeFoodImg">
<item name="android:layout_width">@dimen/dp80</item>
<item name="android:layout_height">@dimen/dp44</item>
@@ -109,10 +126,10 @@
<style name="takeFoodNameTv">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">36dp</item>
<item name="android:layout_height">50dp</item>
<item name="android:gravity">bottom</item>
<item name="android:textColor">#F0E6DC</item>
<item name="android:textSize">@dimen/sp20</item>
<item name="android:textColor">#FF0A1428</item>
<item name="android:textSize">@dimen/sp30</item>
<item name="android:textStyle">bold</item>
<item name="android:layout_centerHorizontal">true</item>
</style>