DoggyZhang 2 месяцев назад
Родитель
Сommit
de90371bc5

+ 1 - 1
app/src/main/java/com/adealink/weparty/commonui/widget/banner/indicator/BaseIndicator.java

@@ -15,7 +15,7 @@ import androidx.annotation.Nullable;
 import com.adealink.weparty.commonui.widget.banner.config.IndicatorConfig;
 
 public class BaseIndicator extends View implements Indicator {
-    protected IndicatorConfig config;
+    public IndicatorConfig config;
     protected Paint mPaint;
     protected float offset;
 

+ 13 - 0
module/im/src/main/java/com/adealink/weparty/im/session/comp/fragment/OrderTopBarFragment.kt

@@ -1,5 +1,6 @@
 package com.adealink.weparty.im.session.comp.fragment
 
+import android.graphics.Color
 import android.os.Bundle
 import android.view.LayoutInflater
 import android.view.ViewGroup
@@ -33,6 +34,7 @@ import com.adealink.weparty.module.order.data.OrderDetailInfo
 import com.adealink.weparty.module.profile.ProfileModule
 import com.adealink.weparty.module.profile.data.UserPlaymateSkill
 import com.adealink.weparty.viewmodel.parentFragmentViewModels
+import androidx.core.graphics.toColorInt
 
 class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_top_bar) {
 
@@ -68,6 +70,12 @@ class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_to
                 binding.vpIndicator.onPageScrollStateChanged(state)
             }
         })
+        binding.vpIndicator.config.apply {
+            setIndicatorSize(5.dp())
+            setIndicatorSpace(6.dp())
+            setNormalColor("#9FCD9B".toColorInt())
+            setSelectedColor("#3FBFBD".toColorInt())
+        }
     }
 
 
@@ -78,12 +86,14 @@ class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_to
                 || (sessionTopData.pendingOrder == null && sessionTopData.skillList.isNullOrEmpty())
             ) {
                 binding.vp.gone()
+                binding.vpIndicator.gone()
                 binding.vPendingOrder.gone()
                 return@observe
             }
             if (sessionTopData.pendingOrder != null && !sessionTopData.pendingOrder.isComplete()) {
                 if (sessionTopData.pendingOrder.buyerUserNo == ProfileModule.getMyUid()) {
                     binding.vp.show()
+                    binding.vpIndicator.show()
                     binding.vPendingOrder.gone()
                     val itemList = mutableListOf<TopBarData>()
                     itemList.add(OrderTopItemData(sessionTopData.pendingOrder))
@@ -93,6 +103,7 @@ class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_to
                     })
                 } else {
                     binding.vp.gone()
+                    binding.vpIndicator.gone()
                     binding.vPendingOrder.show()
                     binding.vPendingOrder.setOrder(
                         sessionTopData.pendingOrder,
@@ -111,6 +122,7 @@ class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_to
             }
             if (!sessionTopData.skillList.isNullOrEmpty()) {
                 binding.vp.show()
+                binding.vpIndicator.show()
                 val itemList = mutableListOf<TopBarData>()
                 itemList.addAll(sessionTopData.skillList.map {
                     SkillTopItemData(it)
@@ -137,6 +149,7 @@ class OrderTopBarFragment : BaseFragment(R.layout.fragment_session_user_order_to
             }
             //无内容,不展示顶部订单
             binding.vp.gone()
+            binding.vpIndicator.gone()
             binding.vPendingOrder.gone()
         }
     }

+ 1 - 0
module/im/src/main/res/layout/fragment_session_user_order_top_bar.xml

@@ -21,6 +21,7 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         app:layout_constraintBottom_toBottomOf="@id/vp"
+        android:layout_marginBottom="6dp"
         app:layout_constraintEnd_toEndOf="@id/vp"
         app:layout_constraintStart_toStartOf="@id/vp" />
 

+ 19 - 4
module/order/src/main/java/com/adealink/weparty/order/OrderDetailActivity.kt

@@ -1,14 +1,20 @@
 package com.adealink.weparty.order
 
 import android.annotation.SuppressLint
+import android.os.Build
+import android.text.SpannableStringBuilder
+import android.text.style.ForegroundColorSpan
+import android.text.style.TypefaceSpan
 import androidx.activity.viewModels
 import androidx.constraintlayout.widget.ConstraintLayout
 import androidx.core.view.updateLayoutParams
 import androidx.recyclerview.widget.GridLayoutManager
+import com.adealink.frame.aab.util.getCompatColor
 import com.adealink.frame.aab.util.getCompatDimension
 import com.adealink.frame.aab.util.getCompatString
 import com.adealink.frame.base.Rlt
 import com.adealink.frame.base.fastLazy
+import com.adealink.frame.ext.findAndSetSpan
 import com.adealink.frame.mvvm.view.viewBinding
 import com.adealink.frame.router.Router
 import com.adealink.frame.router.annotation.BindExtra
@@ -18,6 +24,7 @@ import com.adealink.frame.util.onClick
 import com.adealink.frame.util.removeUiCallbacks
 import com.adealink.frame.util.statusBarHeight
 import com.adealink.weparty.commonui.BaseActivity
+import com.adealink.weparty.commonui.DEFAULT_FONT_BOLD
 import com.adealink.weparty.commonui.ext.dp
 import com.adealink.weparty.commonui.ext.gone
 import com.adealink.weparty.commonui.ext.show
@@ -350,10 +357,18 @@ class OrderDetailActivity : BaseActivity() {
     private fun updateCountDownText() {
         val minute = countDownSecond / 60
         val second = countDownSecond % 60
-        binding.tvAcceptCountDown.text = getCompatString(
-            R.string.order_auto_cancel_title,
-            "${format("%02d", minute)}:${format("%02d", second)}"
-        )
+
+        val timeStr = "${format("%02d", minute)}:${format("%02d", second)}"
+        val text = getCompatString(R.string.order_auto_cancel_title, timeStr)
+        binding.tvAcceptCountDown.text = SpannableStringBuilder(text).apply {
+            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
+                findAndSetSpan(TypefaceSpan(DEFAULT_FONT_BOLD), timeStr)
+            }
+            findAndSetSpan(
+                ForegroundColorSpan(getCompatColor(APP_R.color.color_FF1789FF)),
+                timeStr
+            )
+        }
     }
 
     private fun clickCancel() {

+ 1 - 0
module/order/src/main/res/layout/activity_order_detail.xml

@@ -103,6 +103,7 @@
                 android:layout_marginTop="6dp"
                 android:gravity="center"
                 android:includeFontPadding="false"
+                android:textColor="@color/color_FF1D2129"
                 android:textSize="12sp"
                 app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintStart_toStartOf="parent"