From 2e1edcb7518f20dec30dbd6e1686e9e6b558ec15 Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期三, 16 四月 2025 17:05:12 +0800 Subject: [PATCH] 43 首页登录->首页登录 1.首页弹窗协议同意后,不能默认自动勾选,还需要用户手动勾选 2.退出登录后,再次登录需要手动勾选与用户协议(目前是默认勾选了) 44 首页登录->邀请码 邀请码默认填入“邀请码(选填) 47 数据统计->饼状图数据分类统计问题 1、只统计快递 无需统计还款其他分类 2、图形上下间隔过大" 48 数据统计 天、周、月、年 1.数据统计只统计快递类的,其他分类不需要统计展示,例如取件码记录 2.包括周、月、年的统计环状图,只需要统计快递分类的 --- app/src/main/java/com/example/firstapp/ui/home/HomeFragment.kt | 57 ++++++++++++++++++++++++++++++--------------------------- 1 files changed, 30 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/example/firstapp/ui/home/HomeFragment.kt b/app/src/main/java/com/example/firstapp/ui/home/HomeFragment.kt index 65bf96a..03440a8 100644 --- a/app/src/main/java/com/example/firstapp/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/example/firstapp/ui/home/HomeFragment.kt @@ -22,6 +22,8 @@ import com.example.firstapp.adapter.FinanceAdapter import com.example.firstapp.adapter.CategorySelectorAdapter import com.example.firstapp.adapter.IncomeAdapter +import com.example.firstapp.adapter.TrainAdapter +import com.example.firstapp.adapter.FlightAdapter import com.example.firstapp.database.service.RetrofitClient import com.example.firstapp.databinding.FragmentHomeBinding import com.example.firstapp.databinding.DialogCategorySelectorBinding @@ -45,8 +47,8 @@ private lateinit var expressAdapter: ExpressAdapter private lateinit var financeAdapter: FinanceAdapter private lateinit var incomeAdapter: IncomeAdapter - private lateinit var flightAdapter: FinanceAdapter - private lateinit var trainAdapter: FinanceAdapter + private lateinit var flightAdapter: FlightAdapter + private lateinit var trainAdapter: TrainAdapter private lateinit var dataUpdateReceiver: BroadcastReceiver private lateinit var reminderUpdateReceiver: BroadcastReceiver private var reminderBadge: TextView? = null @@ -185,16 +187,38 @@ binding.flightRecycler.apply { layoutManager = LinearLayoutManager(context) - flightAdapter = FinanceAdapter() + flightAdapter = FlightAdapter() adapter = flightAdapter visibility = View.GONE + + // 设置点击监听 + flightAdapter.setOnPackageClickListener { group, pack -> + // 跳转到航班处理页面 + val intent = Intent(requireContext(), PickupActivity::class.java).apply { + putExtra("station_name", group.stationName) + putExtra("company", pack.company) + putExtra("page_type", PickupActivity.TYPE_FLIGHT) + } + startActivity(intent) + } } binding.trainRecycler.apply { layoutManager = LinearLayoutManager(context) - trainAdapter = FinanceAdapter() + trainAdapter = TrainAdapter() adapter = trainAdapter visibility = View.GONE + + // 设置点击监听 + trainAdapter.setOnPackageClickListener { group, pack -> + // 跳转到火车票页面 + val intent = Intent(requireContext(), PickupActivity::class.java).apply { + putExtra("station_name", group.stationName) + putExtra("company", pack.company) + putExtra("page_type", PickupActivity.TYPE_TRAIN) + } + startActivity(intent) + } } } @@ -538,29 +562,8 @@ // 添加设置未读提醒徽章的方法 private fun setupUnreadBadge() { - // 创建未读消息数量的小红点 - reminderBadge = TextView(requireContext()).apply { - setBackgroundResource(R.drawable.circle_badge_background) - setTextColor(Color.WHITE) - gravity = Gravity.CENTER - textSize = 10f - minWidth = resources.getDimensionPixelSize(R.dimen.badge_min_width) - minHeight = resources.getDimensionPixelSize(R.dimen.badge_min_height) - setPadding(4, 0, 4, 0) - } - - // 添加到布局中 - val parentView = binding.reminderButton.parent as? ViewGroup - parentView?.addView(reminderBadge) - - // 调整位置到提醒按钮右上角 - (reminderBadge?.layoutParams as? FrameLayout.LayoutParams)?.apply { - gravity = Gravity.TOP or Gravity.END - width = 48 // 使用固定像素值 - height = 48 // 使用固定像素值 - // 设置位置偏移,使小红点位于图标右上角 - setMargins(0, 0, 0, 0) - } + // 直接使用布局中定义的小红点 + reminderBadge = binding.reminderBadge } // 更新未读提醒徽章 -- Gitblit v1.9.3