From 93775e1f3d79a1e11b839abbf24201dafcd9e646 Mon Sep 17 00:00:00 2001
From: tj <1378534974@qq.com>
Date: 星期五, 25 四月 2025 13:45:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 app/src/main/res/layout/fragment_home.xml |  274 ++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 192 insertions(+), 82 deletions(-)

diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index 87907ab..aa1b816 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -1,112 +1,222 @@
 <?xml version="1.0" encoding="utf-8"?>
-<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent">
 
-<!--    LinearLayout的作用是按照垂直或者水平方向排列其子视图-->
-<!--    CardView组件是用于实现卡片式布局-->
-<!--    RecyclerView 回收商视图 它使用适配器(Adapter)来管理数据的显示,-->
-<!--    开发者可以根据自己的需求实现适配器的方法,将数据与视图进行绑定。-->
-<!--    这使得 RecyclerView 能够轻松地处理各种类型的数据,并按照自定义的布局方式展示。-->
-<!--    支持局部刷新 通知数据集变化-->
-    <LinearLayout
+    <ScrollView
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="vertical"
-        android:padding="16dp">
-
-        <!-- 我的快递板块 -->
-        <androidx.cardview.widget.CardView
+        android:layout_height="match_parent"
+        android:layout_marginTop="0dp"> <!-- 留出顶部广告位的高度 -->
+        >
+        <!--    LinearLayout的作用是按照垂直或者水平方向排列其子视图-->
+        <!--    CardView组件是用于实现卡片式布局-->
+        <!--    RecyclerView 回收商视图 它使用适配器(Adapter)来管理数据的显示,-->
+        <!--    开发者可以根据自己的需求实现适配器的方法,将数据与视图进行绑定。-->
+        <!--    这使得 RecyclerView 能够轻松地处理各种类型的数据,并按照自定义的布局方式展示。-->
+        <!--    支持局部刷新 通知数据集变化-->
+        <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:layout_marginBottom="16dp"
-            app:cardCornerRadius="8dp"
-            app:cardElevation="2dp">
+            android:orientation="vertical">
 
+
+            <!-- 优化后的快递/财务切换区域 -->
             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:orientation="vertical">
-                <TextView
-                    android:layout_width="match_parent"
+                android:orientation="horizontal"
+                android:layout_marginTop="8dp"
+                android:layout_marginBottom="8dp"
+                android:layout_marginHorizontal="4dp">
+
+                <!-- 分类标签区域 -->
+                <LinearLayout
+                    android:layout_width="0dp"
                     android:layout_height="wrap_content"
-                    android:text="我的快递"
-                    android:textColor="#333333"
-                    android:textSize="16sp"
-                    android:textStyle="bold"/>
+                    android:layout_weight="1"
+                    android:orientation="horizontal">
+
+                    <com.example.firstapp.view.UnderlineTextView
+                        android:id="@+id/tabExpress"
+                        android:layout_width="0dp"
+                        android:layout_height="match_parent"
+                        android:layout_weight="1"
+                        android:gravity="center"
+                        android:padding="4dp"
+                        android:text="快递"
+                        android:textSize="14sp"
+                        android:singleLine="true"
+                        android:ellipsize="end" />
+
+                    <com.example.firstapp.view.UnderlineTextView
+                        android:id="@+id/tabFinance"
+                        android:layout_width="0dp"
+                        android:layout_height="match_parent"
+                        android:layout_weight="1"
+                        android:gravity="center"
+                        android:padding="4dp"
+                        android:text="还款"
+                        android:textSize="14sp"
+                        android:singleLine="true"
+                        android:ellipsize="end" />
+
+                    <com.example.firstapp.view.UnderlineTextView
+                        android:id="@+id/tabIncome"
+                        android:layout_width="0dp"
+                        android:layout_height="match_parent"
+                        android:layout_weight="1"
+                        android:gravity="center"
+                        android:padding="4dp"
+                        android:text="收入"
+                        android:textSize="14sp"
+                        android:singleLine="true"
+                        android:ellipsize="end" />
+
+<!--                    <com.example.firstapp.view.UnderlineTextView-->
+<!--                        android:id="@+id/tabFlight"-->
+<!--                        android:layout_width="0dp"-->
+<!--                        android:layout_height="match_parent"-->
+<!--                        android:layout_weight="1"-->
+<!--                        android:gravity="center"-->
+<!--                        android:padding="4dp"-->
+<!--                        android:text="航班"-->
+<!--                        android:textSize="14sp"-->
+<!--                        android:singleLine="true"-->
+<!--                        android:ellipsize="end" />-->
+
+<!--                    <com.example.firstapp.view.UnderlineTextView-->
+<!--                        android:id="@+id/tabTrain"-->
+<!--                        android:layout_width="0dp"-->
+<!--                        android:layout_height="match_parent"-->
+<!--                        android:layout_weight="1"-->
+<!--                        android:gravity="center"-->
+<!--                        android:padding="4dp"-->
+<!--                        android:text="火车票"-->
+<!--                        android:textSize="14sp"-->
+<!--                        android:singleLine="true"-->
+<!--                        android:ellipsize="end" />-->
+                </LinearLayout>
+
+                <!-- 右侧图标区域 -->
+                <LinearLayout
+                    android:layout_width="wrap_content"
+                    android:layout_height="match_parent"
+                    android:orientation="horizontal"
+                    android:gravity="center_vertical"
+                    android:layout_marginStart="2dp">
+
+                    <ImageButton
+                        android:id="@+id/categoryButton"
+                        android:layout_width="26dp"
+                        android:layout_height="26dp"
+                        android:layout_marginEnd="4dp"
+                        android:background="?attr/selectableItemBackgroundBorderless"
+                        android:contentDescription="分类设置"
+                        android:padding="3dp"
+                        android:scaleType="fitCenter"
+                        android:src="@drawable/home_add" />
+
+                    <!-- 使用FrameLayout包装提醒按钮和红点,确保小红点完整显示 -->
+                    <FrameLayout
+                        android:layout_width="34dp"
+                        android:layout_height="34dp">
+
+                        <ImageButton
+                            android:id="@+id/reminderButton"
+                            android:layout_width="26dp"
+                            android:layout_height="26dp"
+                            android:layout_gravity="center"
+                            android:background="?attr/selectableItemBackgroundBorderless"
+                            android:contentDescription="提醒设置"
+                            android:padding="3dp"
+                            android:scaleType="fitCenter"
+                            android:src="@drawable/reminder" />
+
+                        <TextView
+                            android:id="@+id/reminderBadge"
+                            android:layout_width="14dp"
+                            android:layout_height="14dp"
+                            android:layout_gravity="top|end"
+                            android:background="@drawable/circle_badge_background"
+                            android:gravity="center"
+                            android:textColor="#FFFFFF"
+                            android:textSize="8sp"
+                            android:visibility="gone" />
+                    </FrameLayout>
+                </LinearLayout>
+            </LinearLayout>
+
+            <!-- 内容区域 -->
+            <FrameLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                >
 
                 <androidx.recyclerview.widget.RecyclerView
                     android:id="@+id/express_recycler"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_marginTop="8dp" />
-
-
-            </LinearLayout>
-        </androidx.cardview.widget.CardView>
-
-        <!-- 我的财务板块 -->
-        <androidx.cardview.widget.CardView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginBottom="16dp"
-            app:cardCornerRadius="8dp"
-            app:cardElevation="2dp">
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="vertical"
-                android:padding="16dp"
-                android:background="#E8F5E9">
+                    android:padding="8dp" />
 
                 <androidx.recyclerview.widget.RecyclerView
                     android:id="@+id/finance_recycler"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_marginTop="8dp"/>
-
-                <TextView
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="我的财务"
-                    android:textColor="#333333"
-                    android:textSize="16sp"
-                    android:textStyle="bold"/>
-            </LinearLayout>
-        </androidx.cardview.widget.CardView>
-
-        <!-- 纪念日板块 -->
-        <androidx.cardview.widget.CardView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_marginBottom="16dp"
-            app:cardCornerRadius="8dp"
-            app:cardElevation="2dp">
-
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
-                android:orientation="vertical"
-                android:padding="16dp"
-                android:background="#FFF3E0">
+                    android:padding="8dp" />
 
                 <androidx.recyclerview.widget.RecyclerView
-                    android:id="@+id/memorial_recycler"
+                    android:id="@+id/income_recycler"
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:layout_marginTop="8dp"/>
+                    android:padding="8dp" />
 
-                <TextView
-                    android:layout_width="wrap_content"
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/flight_recycler"
+                    android:layout_width="match_parent"
                     android:layout_height="wrap_content"
-                    android:text="纪念日"
-                    android:textColor="#333333"
-                    android:textSize="16sp"
-                    android:textStyle="bold"/>
-            </LinearLayout>
-        </androidx.cardview.widget.CardView>
+                    android:padding="8dp"
+                    android:visibility="gone" />
 
-    </LinearLayout>
-</ScrollView>
\ No newline at end of file
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/train_recycler"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:padding="8dp"
+                    android:visibility="gone" />
+
+            </FrameLayout>
+
+            <!-- 底部广告位 -->
+            <androidx.cardview.widget.CardView
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                app:cardCornerRadius="8dp"
+                app:cardElevation="2dp">
+
+                <ImageView
+                    android:id="@+id/bottomAdBanner"
+                    android:layout_width="match_parent"
+                    android:layout_height="80dp"
+                    android:scaleType="centerCrop" />
+            </androidx.cardview.widget.CardView>
+
+        </LinearLayout>
+    </ScrollView>
+
+<!--    &lt;!&ndash; 顶部广告位 &ndash;&gt;-->
+<!--    <androidx.cardview.widget.CardView-->
+<!--        android:layout_width="match_parent"-->
+<!--        android:layout_height="wrap_content">-->
+
+<!--        <ImageView-->
+<!--            android:id="@+id/adBanner"-->
+<!--            android:layout_width="match_parent"-->
+<!--            android:layout_height="40dp"-->
+<!--            android:scaleType="centerCrop"-->
+<!--            android:src="@drawable/up_back" />-->
+<!--    </androidx.cardview.widget.CardView>-->
+
+    <!-- 在适当的位置添加 -->
+
+</FrameLayout>

--
Gitblit v1.9.3