添加了用户营养信息界面

This commit is contained in:
zxj
2025-08-01 16:49:34 +08:00
parent c78279a66e
commit 16554805ad
3 changed files with 231 additions and 90 deletions
+174 -90
View File
@@ -5,28 +5,28 @@
android:id="@+id/cl_nutritionData"
android:layout_width="540dp"
android:layout_height="487dp"
android:visibility="visible"
android:padding="28dp">
android:padding="28dp"
android:visibility="visible">
<TextView
android:id="@+id/tv_user_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="夏*秋"
android:textColor="#ffece7d0"
android:textSize="20sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="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"
tools:text="推荐热量:680kcal"
android:textColor="#ffece7d0"
android:textSize="20sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/tv_user_name" />
app:layout_constraintTop_toTopOf="@id/tv_user_name"
tools:text="推荐热量:680kcal" />
<View
android:id="@+id/divider"
@@ -36,105 +36,189 @@
android:background="#19ECE7D0"
app:layout_constraintTop_toBottomOf="@id/tv_user_name" />
<androidx.constraintlayout.helper.widget.Flow
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:paddingBottom="40dp"
app:constraint_referenced_ids="fl_heat, fl_staple_food, fl_fruits_vegetables, fl_meat_eggs"
app:flow_wrapMode="none"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
android:layout_height="match_parent"
android:layout_marginTop="20dp"
android:orientation="horizontal">
<FrameLayout
android:id="@+id/fl_heat"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RelativeLayout
style="@style/takeFoodLayout"
android:layout_weight="2">
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/iv_heat"
android:layout_width="87dp"
android:layout_height="0dp"
android:layout_gravity="bottom|center"
android:layout_marginBottom="33dp"
android:background="#DB0000" />
<LinearLayout
style="@style/takeFoodWeightLayout"
android:layout_above="@id/divKcalView">
<ImageView
android:layout_width="87dp"
android:layout_height="wrap_content"
android:src="@drawable/ic_cylinder_red_small" />
<TextView
android:id="@+id/totalKcalTv"
style="@style/takeFoodValueTv"
android:text="0" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:layout_marginBottom="33dp"
android:src="@drawable/ic_heat" />
<TextView
style="@style/takeFoodValueTv"
android:text="千卡"
android:textSize="@dimen/sp16" />
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:text="热量"
android:textColor="#fff0e6dc"
android:textSize="20sp" />
</FrameLayout>
<View
android:id="@+id/divKcalView"
android:layout_width="1dp"
android:layout_height="@dimen/dp28"
android:layout_above="@id/customKcalColumn"
android:layout_centerHorizontal="true" />
<FrameLayout
android:id="@+id/fl_staple_food"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customKcalColumn"
android:layout_width="@dimen/dp130"
android:layout_height="100dp"
android:layout_above="@id/imgKcal"
android:layout_centerHorizontal="true"
android:layout_marginBottom="-36dp"
android:scaleType="fitXY"
android:src="@drawable/ic_cylinder_red_big" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/iv_staple_food"
android:layout_width="87dp"
android:layout_height="100dp"
android:layout_gravity="bottom|center"
android:src="#99CC99" />
<ImageView
android:id="@+id/imgKcal"
android:layout_width="@dimen/dp160"
android:layout_height="@dimen/dp66"
android:layout_above="@id/kcalTv"
android:layout_centerHorizontal="true"
android:scaleType="fitXY"
android:src="@drawable/ic_heat" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:src="@drawable/ic_staple_food" />
</FrameLayout>
<TextView
android:id="@+id/kcalTv"
style="@style/takeFoodNameTv"
android:text="热量" />
<FrameLayout
android:id="@+id/fl_fruits_vegetables"
android:layout_width="wrap_content"
android:layout_height="match_parent">
</RelativeLayout>
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/iv_fruits_vegetables"
android:layout_width="87dp"
android:layout_height="match_parent"
android:layout_gravity="bottom|center" />
<RelativeLayout style="@style/takeFoodLayout">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:src="@drawable/ic_fruits_vegetables" />
</FrameLayout>
<LinearLayout
style="@style/takeFoodWeightLayout"
android:layout_above="@id/divTotalFoodView">
<FrameLayout
android:id="@+id/fl_meat_eggs"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<TextView
android:id="@+id/totalFoodTv"
style="@style/takeFoodValueTv"
android:text="0" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/iv_meat_eggs"
android:layout_width="87dp"
android:layout_height="match_parent"
android:layout_gravity="bottom|center" />
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="@dimen/sp16" />
</LinearLayout>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center"
android:src="@drawable/ic_meat_eggs" />
</FrameLayout>
<View
android:id="@+id/divTotalFoodView"
android:layout_width="1dp"
android:layout_height="@dimen/dp28"
android:layout_above="@id/customFoodColumn"
android:layout_centerHorizontal="true" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customFoodColumn"
style="@style/takeFoodCustomColumn"
android:layout_above="@id/imgFood" />
<ImageView
android:id="@+id/imgFood"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:scaleType="fitXY"
android:layout_above="@id/foodTv"
android:src="@drawable/ic_staple_food" />
<TextView
android:id="@+id/foodTv"
style="@style/takeFoodNameTv"
android:text="主食" />
</RelativeLayout>
<RelativeLayout style="@style/takeFoodLayout">
<LinearLayout
style="@style/takeFoodWeightLayout"
android:layout_above="@id/divVegetableView">
<TextView
android:id="@+id/totalVegetableTv"
style="@style/takeFoodValueTv"
android:text="0" />
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="@dimen/sp16" />
</LinearLayout>
<View
android:id="@+id/divVegetableView"
android:layout_width="1dp"
android:layout_height="@dimen/dp28"
android:layout_above="@id/customVegetableColumn"
android:layout_centerHorizontal="true" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customVegetableColumn"
style="@style/takeFoodCustomColumn"
android:layout_above="@id/imgVegetable" />
<ImageView
android:id="@+id/imgVegetable"
style="@style/takeFoodImg"
android:layout_above="@id/vegetableTv"
android:src="@drawable/ic_fruits_vegetables" />
<TextView
android:id="@+id/vegetableTv"
style="@style/takeFoodNameTv"
android:text="果蔬" />
</RelativeLayout>
<RelativeLayout style="@style/takeFoodLayout">
<LinearLayout
style="@style/takeFoodWeightLayout"
android:layout_above="@id/divMeatView">
<TextView
android:id="@+id/totalMeatTv"
style="@style/takeFoodValueTv"
android:text="0" />
<TextView
style="@style/takeFoodValueTv"
android:text="克"
android:textSize="@dimen/sp16" />
</LinearLayout>
<View
android:id="@+id/divMeatView"
android:layout_width="1dp"
android:layout_height="@dimen/dp28"
android:layout_above="@id/customMeatColumn"
android:layout_centerHorizontal="true" />
<com.sw.dualscreen.view.CustomImageView
android:id="@+id/customMeatColumn"
style="@style/takeFoodCustomColumn"
android:layout_above="@id/imgMeat" />
<ImageView
android:id="@+id/imgMeat"
style="@style/takeFoodImg"
android:layout_above="@id/meatTv"
android:src="@drawable/ic_meat_eggs" />
<TextView
android:id="@+id/meatTv"
style="@style/takeFoodNameTv"
android:text="蛋肉" />
</RelativeLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
+8
View File
@@ -1,4 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="bottom_sheet_height">1000dp</dimen>
<dimen name="sp16">16sp</dimen>
<dimen name="sp30">30sp</dimen>
<dimen name="dp28">28dp</dimen>
<dimen name="dp120">120dp</dimen>
<dimen name="dp130">130dp</dimen>
<dimen name="dp160">160dp</dimen>
<dimen name="dp66">66dp</dimen>
<dimen name="dp80">80dp</dimen>
</resources>
+49
View File
@@ -66,4 +66,53 @@
<item name="divider">@color/white</item>
<item name="android:dividerHeight">1dp</item>
</style>
<style name="takeFoodLayout">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">match_parent</item>
<item name="android:gravity">bottom</item>
<item name="android:layout_weight">1</item>
</style>
<style name="takeFoodWeightLayout">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_centerHorizontal">true</item>
<item name="android:gravity">bottom</item>
<item name="android:layout_marginBottom">20dp</item>
<item name="android:orientation">horizontal</item>
</style>
<style name="takeFoodValueTv">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textSize">@dimen/sp30</item>
<item name="android:textColor">#F0E6DC</item>
</style>
<style name="takeFoodCustomColumn">
<item name="android:layout_width">@dimen/dp80</item>
<item name="android:layout_height">100dp</item>
<item name="android:layout_centerHorizontal">true</item>
<item name="android:layout_marginBottom">-36dp</item>
<item name="android:scaleType">fitXY</item>
<item name="android:src">@drawable/ic_cylinder_green_big</item>
</style>
<style name="takeFoodImg">
<item name="android:layout_width">@dimen/dp120</item>
<item name="android:layout_height">@dimen/dp66</item>
<item name="android:layout_centerHorizontal">true</item>
<item name="android:scaleType">fitXY</item>
</style>
<style name="takeFoodNameTv">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#F0E6DC</item>
<item name="android:textSize">@dimen/sp30</item>
<item name="android:textStyle">bold</item>
<item name="android:layout_marginTop">50dp</item>
<item name="android:layout_centerHorizontal">true</item>
</style>
</resources>