Parcourir la source

fix: 榜单阿语适配、代码优化

pengwuliang il y a 8 mois
Parent
commit
6a417ce4ec

BIN
app/src/main/res/drawable-ldrtl-xhdpi/commonui_back_white_48_ic.webp


+ 1 - 2
module/rank/src/main/java/com/adealink/weparty/rank/RankActivity.kt

@@ -23,7 +23,6 @@ import com.adealink.weparty.rank.constant.TYPE_TOP_FRIEND
 import com.adealink.weparty.rank.constant.TYPE_TOP_GIFT
 import com.adealink.weparty.rank.constant.TYPE_TOP_PARTY
 import com.adealink.weparty.rank.constant.TYPE_TOP_STAR
-import com.adealink.weparty.rank.constant.getTimeTitleBy
 import com.adealink.weparty.rank.constant.getTypeTitleBy
 import com.adealink.weparty.rank.databinding.ActivityRankBinding
 import com.adealink.weparty.rank.databinding.TabRankTypeBinding
@@ -167,7 +166,7 @@ class RankActivity : BaseActivity() {
     internal inner class RankTypePageAdapter : BaseActivityTabFragmentStateAdapter(this) {
 
         override fun getTabName(pos: Int): String {
-            return getTimeTitleBy(TYPE_TOP_LIST[pos])
+            return getTypeTitleBy(TYPE_TOP_LIST[pos])
         }
 
         override fun getItemCount(): Int {

+ 3 - 3
module/rank/src/main/java/com/adealink/weparty/rank/constant/Constants.kt

@@ -105,15 +105,15 @@ fun getTypeTipsBy(type: Int): String {
 fun getTimeTitleBy(time: Int): String {
     return when (time) {
         TIME_DAILY -> {
-            getCompatString(R.string.rank_daily_capital_first)
+            getCompatString(APP_R.string.rank_daily)
         }
 
         TIME_WEEKLY -> {
-            getCompatString(R.string.rank_weekly_capital_first)
+            getCompatString(APP_R.string.rank_weekly)
         }
 
         TIME_MONTHLY -> {
-            getCompatString(R.string.rank_monthly_capital_first)
+            getCompatString(APP_R.string.rank_monthly)
         }
 
         else -> {

+ 10 - 9
module/rank/src/main/java/com/adealink/weparty/rank/ranklist/RankFragment.kt

@@ -37,6 +37,7 @@ import com.google.android.material.tabs.TabLayout
 import com.google.android.material.tabs.TabLayoutMediator
 import com.qmuiteam.qmui.widget.popup.QMUIPopup
 import com.qmuiteam.qmui.widget.popup.QMUIPopups
+import com.adealink.weparty.R as APP_R
 
 /**
  * author: PengWuliang
@@ -76,9 +77,9 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
             else -> 0
         }
     private val genderTypeList = listOf(
-        GenderType(getCompatString(com.adealink.weparty.R.string.common_all), TYPE_ALL, true),
-        GenderType(getCompatString(com.adealink.weparty.R.string.common_male), TYPE_MALE, false),
-        GenderType(getCompatString(com.adealink.weparty.R.string.common_female), TYPE_FEMALE, false)
+        GenderType(getCompatString(APP_R.string.common_all), TYPE_ALL, true),
+        GenderType(getCompatString(APP_R.string.common_male), TYPE_MALE, false),
+        GenderType(getCompatString(APP_R.string.common_female), TYPE_FEMALE, false)
     )
 
     override fun initViews() {
@@ -87,7 +88,7 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
             binding.tvGenderSelector.setCompoundDrawablesRelativeWithIntrinsicBounds(
                 null,
                 null,
-                getCompatDrawable(com.adealink.weparty.R.drawable.common_up_arrow_32_ic),
+                getCompatDrawable(APP_R.drawable.common_up_arrow_32_ic),
                 null
             )
             showGenderPopup(binding.tvGenderSelector)
@@ -117,10 +118,10 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
                 }
                 tabTitle.text = getTimeTitleBy(TIME_LIST[position])
                 if(position == TIME_LIST.indexOf(time)) {
-                    tabTitle.setTextColor(getCompatColor(com.adealink.weparty.R.color.white))
+                    tabTitle.setTextColor(getCompatColor(APP_R.color.white))
                     timeTabBg.show()
                 } else {
-                    tabTitle.setTextColor(getCompatColor(com.adealink.weparty.R.color.color_B3FFFFFF))
+                    tabTitle.setTextColor(getCompatColor(APP_R.color.color_B3FFFFFF))
                     timeTabBg.gone()
                 }
                 tab.customView = root
@@ -154,7 +155,7 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
             if (isSelected) {
                 time = TIME_LIST.getOrElse(tab.position) { TIME_DAILY }
                 updateRankList()
-                customViewBinding.tabTitle.setTextColor(getCompatColor(com.adealink.weparty.R.color.white))
+                customViewBinding.tabTitle.setTextColor(getCompatColor(APP_R.color.white))
                 customViewBinding.timeTabBg.setImageResource(
                     when (type) {
                         TYPE_TOP_GIFT -> R.drawable.rank_contribution_time_tab_bg
@@ -167,7 +168,7 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
                 )
                 customViewBinding.timeTabBg.visibility = View.VISIBLE
             } else {
-                customViewBinding.tabTitle.setTextColor(getCompatColor(com.adealink.weparty.R.color.color_B3FFFFFF))
+                customViewBinding.tabTitle.setTextColor(getCompatColor(APP_R.color.color_B3FFFFFF))
                 customViewBinding.timeTabBg.visibility = View.INVISIBLE
             }
         }
@@ -187,7 +188,7 @@ class RankFragment: BaseFragment(R.layout.fragment_rank) {
                 view.setCompoundDrawablesRelativeWithIntrinsicBounds(
                     null,
                     null,
-                    getCompatDrawable(com.adealink.weparty.R.drawable.common_down_arrow_32_ic),
+                    getCompatDrawable(APP_R.drawable.common_down_arrow_32_ic),
                     null
                 )
                 updateRankListByGender(type.value)

+ 1 - 2
module/rank/src/main/java/com/adealink/weparty/rank/ranklist/RankLayoutChangeWrapper.kt

@@ -17,7 +17,7 @@ class RankLayoutChangeWrapper(val binding: FragmentRankListBinding, private val
     private val normalTop = NormalTopThreeDelegate(binding.layoutRankTopThree, type)
     private val cpTop = CoupleTopThreeDelegate(binding.layoutCoupleTopThree)
 
-    private val normalBottom = NormalBottomDelegate(binding.layoutRankBottom)
+    private val normalBottom = NormalBottomDelegate(binding.layoutRankBottom, type)
     private val cpBottom = CoupleBottomDelegate(binding.layoutCoupleBottom)
 
     init {
@@ -55,7 +55,6 @@ class RankLayoutChangeWrapper(val binding: FragmentRankListBinding, private val
         if (rankType != TYPE_TOP_CP) {
             normalTop.show()
             normalBottom.show()
-            normalBottom.setBackground(rankType)
             cpTop.hide()
             cpBottom.hide()
         } else {

+ 18 - 22
module/rank/src/main/java/com/adealink/weparty/rank/ranklist/topthree/NormalBottomDelegate.kt

@@ -21,27 +21,16 @@ import com.adealink.weparty.rank.databinding.ItemRankBinding
 import com.facebook.drawee.generic.RoundingParams
 import com.adealink.weparty.R as APP_R
 
-class NormalBottomDelegate(private val binding: ItemRankBinding) : BottomDelegate<RankItemData> {
+class NormalBottomDelegate(private val binding: ItemRankBinding, private val type: Int) : BottomDelegate<RankItemData> {
 
-    private var type = 0
     private val circleParams = RoundingParams.asCircle()
     private val squareParams = RoundingParams.fromCornersRadius(8.dpf()).setRoundAsCircle(false)
 
-    override fun show() {
-        binding.root.visibility = View.VISIBLE
-    }
-
-    override fun hide() {
-        binding.root.visibility = View.GONE
-    }
-
-    fun setBackground(type: Int) {
-        this.type = type
-        if(type == TYPE_TOP_STAR && ProfileModule.getMyUserInfo()?.gender == Gender.MALE.gender) {
-            hide()
-            return
+    init {
+        if(type == TYPE_TOP_PARTY) {
+            binding.ivAvatar.hierarchy.roundingParams = squareParams
         } else {
-            show()
+            binding.ivAvatar.hierarchy.roundingParams = circleParams
         }
         binding.root.background = getCompatDrawable(
             when (type) {
@@ -51,6 +40,19 @@ class NormalBottomDelegate(private val binding: ItemRankBinding) : BottomDelegat
                 else -> 0
             }
         )
+        if(type == TYPE_TOP_STAR && ProfileModule.getMyUserInfo()?.gender == Gender.MALE.gender) {
+            hide()
+        } else {
+            show()
+        }
+    }
+
+    override fun show() {
+        binding.root.visibility = View.VISIBLE
+    }
+
+    override fun hide() {
+        binding.root.visibility = View.GONE
     }
 
     override fun updateMyItem(item: RankItemData?) {
@@ -85,17 +87,11 @@ class NormalBottomDelegate(private val binding: ItemRankBinding) : BottomDelegat
         binding.tvValue.text = item.rankScore.toString()
         binding.tvName.text = item.name
         if (item.isRoomRank) {
-            binding.ivAvatar.post {
-                binding.ivAvatar.hierarchy.roundingParams = squareParams
-            }
             binding.userContainer.avatarContainer.show()
             binding.userContainer.personalLabelGroup.gone()
             binding.userContainer.ivRoomOwner.setImageUrl(item.userInfo?.url)
             setupAvatar(item.topAvatarList ?: emptyList(), binding.userContainer)
         } else {
-            binding.ivAvatar.post {
-                binding.ivAvatar.hierarchy.roundingParams = circleParams
-            }
             binding.userContainer.avatarContainer.gone()
             binding.userContainer.personalLabelGroup.show()
             binding.userContainer.userSex.setSex(item.userInfo?.gender, item.userInfo?.birthday)

+ 1 - 1
module/rank/src/main/res/layout/activity_rank.xml

@@ -42,7 +42,7 @@
             android:layout_width="24dp"
             android:layout_height="24dp"
             android:layout_marginStart="12dp"
-            android:src="@drawable/common_back_white_56_ic"
+            android:src="@drawable/commonui_back_white_48_ic"
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintStart_toStartOf="parent"
             app:layout_constraintTop_toTopOf="parent" />