|
@@ -2,7 +2,9 @@ package com.swago.room.ranklist
|
|
|
|
|
|
import android.content.Context
|
|
|
import android.graphics.Color
|
|
|
+import androidx.activity.viewModels
|
|
|
import androidx.core.content.ContextCompat
|
|
|
+import androidx.fragment.app.viewModels
|
|
|
import com.alibaba.android.arouter.facade.annotation.Autowired
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
import com.alibaba.android.arouter.launcher.ARouter
|
|
@@ -12,8 +14,10 @@ import com.swago.baseswago.activity.BaseXActivity
|
|
|
import com.swago.baseswago.constant.ARouteConstant
|
|
|
import com.swago.baseswago.util.AppContext
|
|
|
import com.swago.baseswago.util.DpPxUtil
|
|
|
+import com.swago.baseswago.util.UserInfo
|
|
|
import com.swago.room.R
|
|
|
import com.swago.room.databinding.ActivityRankListBinding
|
|
|
+import com.swago.room.vm.RoomOtherVm
|
|
|
import net.lucode.hackware.magicindicator.ViewPagerHelper
|
|
|
import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator
|
|
|
import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter
|
|
@@ -26,41 +30,46 @@ import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.Simple
|
|
|
*description:
|
|
|
*/
|
|
|
@Route(path = ARouteConstant.Room.rankList)
|
|
|
-class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
|
|
|
+class RankListActivity : BaseXActivity<ActivityRankListBinding>() {
|
|
|
|
|
|
+ private val roomOtherVm by viewModels<RoomOtherVm>()
|
|
|
|
|
|
@Autowired
|
|
|
@JvmField
|
|
|
var roomId = ""
|
|
|
|
|
|
|
|
|
-
|
|
|
private val listTitles = arrayListOf(
|
|
|
AppContext.getContext().resources.getString(R.string.daily),
|
|
|
AppContext.getContext().resources.getString(R.string.weekly),
|
|
|
- AppContext.getContext().resources.getString(R.string.monthly))
|
|
|
-
|
|
|
+ AppContext.getContext().resources.getString(R.string.monthly)
|
|
|
+ )
|
|
|
|
|
|
|
|
|
- override fun loadData() {}
|
|
|
+ override fun loadData() {
|
|
|
+ roomOtherVm.getRankList(roomId, 1, 1)
|
|
|
+ }
|
|
|
|
|
|
override fun initOther() {
|
|
|
ARouter.getInstance().inject(this)
|
|
|
|
|
|
setBackView(binding.toolbar.ivBack)
|
|
|
binding.toolbar.ivBack.setImageResource(R.mipmap.back_white)
|
|
|
- binding.toolbar.tvTitle.text = AppContext.getContext().resources.getString(R.string.fans_list)
|
|
|
- binding.toolbar.tvTitle.setTextColor(ContextCompat.getColor(this,R.color._ffffff))
|
|
|
+ binding.toolbar.tvTitle.text =
|
|
|
+ AppContext.getContext().resources.getString(R.string.fans_list)
|
|
|
+ binding.toolbar.tvTitle.setTextColor(ContextCompat.getColor(this, R.color._ffffff))
|
|
|
binding.viewPager.offscreenPageLimit = 3
|
|
|
- val listFragments = arrayListOf(RankListFragment.newInstance(roomId,1),
|
|
|
- RankListFragment.newInstance(roomId,2),
|
|
|
- RankListFragment.newInstance(roomId,3))
|
|
|
- val viewPagerAdapter = SwagoAdapter(listFragments,supportFragmentManager,listTitles)
|
|
|
+ val listFragments = arrayListOf(
|
|
|
+ RankListFragment.newInstance(roomId, 1),
|
|
|
+ RankListFragment.newInstance(roomId, 2),
|
|
|
+ RankListFragment.newInstance(roomId, 3)
|
|
|
+ )
|
|
|
+ val viewPagerAdapter = SwagoAdapter(listFragments, supportFragmentManager, listTitles)
|
|
|
binding.viewPager.adapter = viewPagerAdapter
|
|
|
|
|
|
val commonNavigator = CommonNavigator(this)
|
|
|
commonNavigator.isAdjustMode = true
|
|
|
- commonNavigator.adapter = object: CommonNavigatorAdapter(){
|
|
|
+ commonNavigator.adapter = object : CommonNavigatorAdapter() {
|
|
|
override fun getCount(): Int {
|
|
|
return listTitles.size
|
|
|
}
|
|
@@ -70,7 +79,7 @@ class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
|
|
|
simplePagerTitleView.text = listTitles[index]
|
|
|
val padding = DpPxUtil.dip2px(15f).toFloat()
|
|
|
simplePagerTitleView.textSize = 16f
|
|
|
- simplePagerTitleView.setPadding(padding.toInt(),0, padding.toInt(),0)
|
|
|
+ simplePagerTitleView.setPadding(padding.toInt(), 0, padding.toInt(), 0)
|
|
|
simplePagerTitleView.normalColor = Color.parseColor("#868686")
|
|
|
simplePagerTitleView.selectedColor = Color.parseColor("#000000")
|
|
|
simplePagerTitleView.setOnClickListener {
|
|
@@ -93,10 +102,49 @@ class RankListActivity :BaseXActivity<ActivityRankListBinding>() {
|
|
|
}
|
|
|
|
|
|
binding.magicIndicator.navigator = commonNavigator
|
|
|
- ViewPagerHelper.bind(binding.magicIndicator,binding.viewPager)
|
|
|
+ ViewPagerHelper.bind(binding.magicIndicator, binding.viewPager)
|
|
|
}
|
|
|
|
|
|
- override fun initLiveData() {
|
|
|
+ private val diamondDrawable by lazy {
|
|
|
+ AppContext.getContext().resources.getDrawable(R.mipmap.icon_diamond)
|
|
|
+ }
|
|
|
|
|
|
+ private val coinDrawable by lazy {
|
|
|
+ AppContext.getContext().resources.getDrawable(R.mipmap.icon_room_coin)
|
|
|
+ }
|
|
|
+
|
|
|
+ override fun initLiveData() {
|
|
|
+ roomOtherVm.totalLiveData.observe(this) {
|
|
|
+ binding.tvIncome.text = it
|
|
|
+ UserInfo.getUserInfo()?.let {
|
|
|
+ when (it.user_type) {
|
|
|
+ 0 -> {
|
|
|
+ binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
|
|
|
+ null,
|
|
|
+ coinDrawable,
|
|
|
+ null,
|
|
|
+ null
|
|
|
+ )
|
|
|
+ }
|
|
|
+
|
|
|
+ 1 -> {
|
|
|
+ binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
|
|
|
+ diamondDrawable,
|
|
|
+ null,
|
|
|
+ null,
|
|
|
+ null
|
|
|
+ )
|
|
|
+ }
|
|
|
+ else -> {
|
|
|
+ binding.tvIncome.setCompoundDrawablesWithIntrinsicBounds(
|
|
|
+ coinDrawable,
|
|
|
+ null,
|
|
|
+ null,
|
|
|
+ null
|
|
|
+ )
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|