diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt index 90c55ab..8c89dfb 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt @@ -1,5 +1,6 @@ package com.casic.xz.meterage.fragment +import android.graphics.Color import android.view.View import android.widget.LinearLayout import android.widget.TextView @@ -26,6 +27,7 @@ import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter import com.pengxh.kt.lite.adapter.ViewHolder import com.pengxh.kt.lite.base.KotlinBaseFragment +import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues @@ -46,6 +48,7 @@ private lateinit var userData: UserInfoModel.DataModel private lateinit var remindAdapter: NormalRecyclerAdapter private var dataBeans: MutableList = ArrayList() + private var noticeBeans: MutableList = ArrayList() private var pageIndex = 1 private var isRefresh = false private var isLoadMore = false @@ -56,15 +59,37 @@ } override fun initData() { - noticeSwitcherView.setFactory { TextView(requireContext()) } + noticeSwitcherView.setFactory { + val textView = TextView(requireContext()) + textView.setTextColor(Color.BLACK) + textView + } + timeSwitcherView.setFactory { + val textView = TextView(requireContext()) + textView.setTextColor(R.color.hintColor.convertColor(requireContext())) + textView + } weakReferenceHandler = WeakReferenceHandler { msg -> when (msg.what) { 2023030601 -> { - val rowsModel = msg.obj as List - //TODO 添加切换动画 - noticeSwitcherView.setText(rowsModel[currentIndex % rowsModel.size].noticeTitle) - currentIndex++ + if (noticeBeans.size != 0) { + val model = noticeBeans[currentIndex % noticeBeans.size] + + noticeSwitcherView.setText(model.noticeTitle) + + val deltaT = model.createTime.diffCurrentTime() + val diffTime = if (deltaT < 24) { + "${deltaT}小时前" + } else { + model.createTime.formatToDate() + } + timeSwitcherView.setText(diffTime) + currentIndex++ + } else { + noticeSwitcherView.setText("暂无新消息") + timeSwitcherView.setText("--:--") + } } 2023030801 -> { if (isRefresh || isLoadMore) { @@ -183,14 +208,7 @@ noticeCountView.text = "9+" } - timer.schedule(object : TimerTask() { - override fun run() { - val message = weakReferenceHandler.obtainMessage() - message.what = 2023030601 - message.obj = it.data.rows - weakReferenceHandler.sendMessage(message) - } - }, 0, 5000) + noticeBeans = data.rows } } } @@ -260,6 +278,13 @@ } } }) + + //消息滚动 + timer.schedule(object : TimerTask() { + override fun run() { + weakReferenceHandler.sendEmptyMessage(2023030601) + } + }, 0, 5000) } override fun onResume() { diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt index 90c55ab..8c89dfb 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/HomePageFragment.kt @@ -1,5 +1,6 @@ package com.casic.xz.meterage.fragment +import android.graphics.Color import android.view.View import android.widget.LinearLayout import android.widget.TextView @@ -26,6 +27,7 @@ import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter import com.pengxh.kt.lite.adapter.ViewHolder import com.pengxh.kt.lite.base.KotlinBaseFragment +import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show import com.pengxh.kt.lite.utils.SaveKeyValues @@ -46,6 +48,7 @@ private lateinit var userData: UserInfoModel.DataModel private lateinit var remindAdapter: NormalRecyclerAdapter private var dataBeans: MutableList = ArrayList() + private var noticeBeans: MutableList = ArrayList() private var pageIndex = 1 private var isRefresh = false private var isLoadMore = false @@ -56,15 +59,37 @@ } override fun initData() { - noticeSwitcherView.setFactory { TextView(requireContext()) } + noticeSwitcherView.setFactory { + val textView = TextView(requireContext()) + textView.setTextColor(Color.BLACK) + textView + } + timeSwitcherView.setFactory { + val textView = TextView(requireContext()) + textView.setTextColor(R.color.hintColor.convertColor(requireContext())) + textView + } weakReferenceHandler = WeakReferenceHandler { msg -> when (msg.what) { 2023030601 -> { - val rowsModel = msg.obj as List - //TODO 添加切换动画 - noticeSwitcherView.setText(rowsModel[currentIndex % rowsModel.size].noticeTitle) - currentIndex++ + if (noticeBeans.size != 0) { + val model = noticeBeans[currentIndex % noticeBeans.size] + + noticeSwitcherView.setText(model.noticeTitle) + + val deltaT = model.createTime.diffCurrentTime() + val diffTime = if (deltaT < 24) { + "${deltaT}小时前" + } else { + model.createTime.formatToDate() + } + timeSwitcherView.setText(diffTime) + currentIndex++ + } else { + noticeSwitcherView.setText("暂无新消息") + timeSwitcherView.setText("--:--") + } } 2023030801 -> { if (isRefresh || isLoadMore) { @@ -183,14 +208,7 @@ noticeCountView.text = "9+" } - timer.schedule(object : TimerTask() { - override fun run() { - val message = weakReferenceHandler.obtainMessage() - message.what = 2023030601 - message.obj = it.data.rows - weakReferenceHandler.sendMessage(message) - } - }, 0, 5000) + noticeBeans = data.rows } } } @@ -260,6 +278,13 @@ } } }) + + //消息滚动 + timer.schedule(object : TimerTask() { + override fun run() { + weakReferenceHandler.sendEmptyMessage(2023030601) + } + }, 0, 5000) } override fun onResume() { diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 71b8b08..154d157 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -111,15 +111,12 @@ android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/dp_10" android:layout_weight="1" - android:text="万用表已检定完成" - android:textColor="@color/black" android:textSize="@dimen/sp_12" /> -