我的页面刷新逻辑优化
This commit is contained in:
@@ -85,6 +85,9 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
private val homeViewModel: HomeViewModel by activityViewModels()
|
private val homeViewModel: HomeViewModel by activityViewModels()
|
||||||
private val vipViewModel: VipViewModel by viewModels()
|
private val vipViewModel: VipViewModel by viewModels()
|
||||||
private var newUserDisposable: Disposable? = null
|
private var newUserDisposable: Disposable? = null
|
||||||
|
private var centerIndex = 0
|
||||||
|
private var gameIndex = 0
|
||||||
|
|
||||||
override fun getRootLayoutId(): Int {
|
override fun getRootLayoutId(): Int {
|
||||||
return R.layout.fragment_me
|
return R.layout.fragment_me
|
||||||
}
|
}
|
||||||
@@ -125,10 +128,24 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mBinding.viewPagerGame.addOnPageChangeListener(object : OnPageSelectedListener() {
|
||||||
|
override fun onPageSelected(position: Int) {
|
||||||
|
gameIndex = position
|
||||||
|
mBinding.magicIndicatorGame.setSelectedPage(position)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
meViewModel.gameInfoListLiveData.observe(viewLifecycleOwner) {
|
meViewModel.gameInfoListLiveData.observe(viewLifecycleOwner) {
|
||||||
setGameInfoData(it)
|
setGameInfoData(it)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mBinding.viewPagerEntrance.addOnPageChangeListener(object : OnPageSelectedListener() {
|
||||||
|
override fun onPageSelected(position: Int) {
|
||||||
|
centerIndex = position
|
||||||
|
mBinding.magicIndicatorEntrance.setSelectedPage(position)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
meViewModel.meCenterInfoLiveData.observe(viewLifecycleOwner) {
|
meViewModel.meCenterInfoLiveData.observe(viewLifecycleOwner) {
|
||||||
setCenterInfoData(it)
|
setCenterInfoData(it)
|
||||||
}
|
}
|
||||||
@@ -178,6 +195,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private fun setCenterInfoData(pagerList: List<List<MeCenterInfo>>?) {
|
private fun setCenterInfoData(pagerList: List<List<MeCenterInfo>>?) {
|
||||||
if (pagerList.isNullOrEmpty()) {
|
if (pagerList.isNullOrEmpty()) {
|
||||||
mBinding.llSettingEntrance.isVisible = false
|
mBinding.llSettingEntrance.isVisible = false
|
||||||
@@ -185,7 +203,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
}
|
}
|
||||||
mBinding.llSettingEntrance.isVisible = true
|
mBinding.llSettingEntrance.isVisible = true
|
||||||
mBinding.magicIndicatorEntrance.initIndicator(pagerList.size)
|
mBinding.magicIndicatorEntrance.initIndicator(pagerList.size)
|
||||||
mBinding.magicIndicatorEntrance.setSelectedPage(0)
|
mBinding.magicIndicatorEntrance.setSelectedPage(centerIndex)
|
||||||
mBinding.magicIndicatorEntrance.visibility =
|
mBinding.magicIndicatorEntrance.visibility =
|
||||||
if (pagerList.size > 1) View.VISIBLE else View.INVISIBLE
|
if (pagerList.size > 1) View.VISIBLE else View.INVISIBLE
|
||||||
mBinding.viewPagerEntrance.adapter = object : PagerAdapter() {
|
mBinding.viewPagerEntrance.adapter = object : PagerAdapter() {
|
||||||
@@ -227,13 +245,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
container.removeView(recyclerView)
|
container.removeView(recyclerView)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mBinding.viewPagerEntrance.addOnPageChangeListener(object : OnPageSelectedListener() {
|
mBinding.viewPagerEntrance.setCurrentItem(centerIndex, false)
|
||||||
override fun onPageSelected(position: Int) {
|
|
||||||
if (pagerList.size > 1) {
|
|
||||||
mBinding.magicIndicatorEntrance.setSelectedPage(position)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setGameInfoData(pagerList: List<List<GameInfo>>?) {
|
private fun setGameInfoData(pagerList: List<List<GameInfo>>?) {
|
||||||
@@ -243,7 +255,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
}
|
}
|
||||||
mBinding.llGame.isVisible = true
|
mBinding.llGame.isVisible = true
|
||||||
mBinding.magicIndicatorGame.initIndicator(pagerList.size)
|
mBinding.magicIndicatorGame.initIndicator(pagerList.size)
|
||||||
mBinding.magicIndicatorGame.setSelectedPage(0)
|
mBinding.magicIndicatorGame.setSelectedPage(gameIndex)
|
||||||
mBinding.magicIndicatorGame.visibility =
|
mBinding.magicIndicatorGame.visibility =
|
||||||
if (pagerList.size > 1) View.VISIBLE else View.INVISIBLE
|
if (pagerList.size > 1) View.VISIBLE else View.INVISIBLE
|
||||||
val cacheItemView = SparseArray<RecyclerView>()
|
val cacheItemView = SparseArray<RecyclerView>()
|
||||||
@@ -286,13 +298,7 @@ class MeFragment : BaseFragment(), View.OnClickListener {
|
|||||||
container.removeView(recyclerView)
|
container.removeView(recyclerView)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mBinding.viewPagerGame.addOnPageChangeListener(object : OnPageSelectedListener() {
|
mBinding.viewPagerGame.setCurrentItem(gameIndex, false)
|
||||||
override fun onPageSelected(position: Int) {
|
|
||||||
if (pagerList.size > 1) {
|
|
||||||
mBinding.magicIndicatorGame.setSelectedPage(position)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -156,7 +156,7 @@ public class MainTabLayout extends LinearLayout implements View.OnClickListener
|
|||||||
meNumber = count;
|
meNumber = count;
|
||||||
MainRedPointTab pointTab = findTabInfoByType(MainTabType.TAB_TYPE_ME);
|
MainRedPointTab pointTab = findTabInfoByType(MainTabType.TAB_TYPE_ME);
|
||||||
if (pointTab != null) {
|
if (pointTab != null) {
|
||||||
pointTab.setNumber(count);
|
//pointTab.setNumber(count);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user