|
@@ -4,20 +4,22 @@ import android.os.Bundle
|
|
|
import androidx.fragment.app.Fragment
|
|
|
import androidx.fragment.app.FragmentManager
|
|
|
import androidx.fragment.app.FragmentTransaction
|
|
|
-import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
import com.guadou.cs_cptservices.base.activity.YYBaseVDBActivity
|
|
|
import com.guadou.cs_cptservices.interfaces.IFragmentRefresh
|
|
|
-import com.guadou.cs_router.ARouterPath
|
|
|
import com.guadou.cs_router.YYRouterService
|
|
|
import com.guadou.lib_baselib.bean.DataBindingConfig
|
|
|
import com.guadou.lib_baselib.ext.commContext
|
|
|
import com.guadou.lib_baselib.ext.gotoActivity
|
|
|
import com.guadou.lib_baselib.utils.NetWorkUtil
|
|
|
import com.guadou.lib_baselib.utils.StatusBarUtils
|
|
|
-import com.hongyegroup.cpt_parttime.R
|
|
|
import com.hongyegroup.cpt_parttime.BR
|
|
|
+import com.hongyegroup.cpt_parttime.R
|
|
|
import com.hongyegroup.cpt_parttime.databinding.ActivityPartTimeMainBinding
|
|
|
import com.hongyegroup.cpt_parttime.mvvm.PartTimeMainViewModel
|
|
|
+import com.hongyegroup.cpt_parttime.ui.main.PartTimeActivesFragment
|
|
|
+import com.hongyegroup.cpt_parttime.ui.main.PartTimeHomeFragment
|
|
|
+import com.hongyegroup.cpt_parttime.ui.main.PartTimeProfileFragment
|
|
|
+import com.hongyegroup.cpt_parttime.ui.main.PartTimeTrainFragment
|
|
|
import dagger.hilt.android.AndroidEntryPoint
|
|
|
|
|
|
/**
|
|
@@ -27,10 +29,11 @@ import dagger.hilt.android.AndroidEntryPoint
|
|
|
class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPartTimeMainBinding>() {
|
|
|
|
|
|
//首页的5个TabFragment
|
|
|
- private var mHomeFragment: Fragment? = null
|
|
|
- private var mEWalletFragment: Fragment? = null
|
|
|
- private var mNewsFeedFragment: Fragment? = null
|
|
|
- private var mProfileFragment: Fragment? = null
|
|
|
+ private var mPartTimeHomeFragment: Fragment? = null
|
|
|
+ private var mPartTimeActiveFragment: Fragment? = null
|
|
|
+ private var mPartTimeWalletFragment: Fragment? = null
|
|
|
+ private var mPartTimeTrainFragment: Fragment? = null
|
|
|
+ private var mPartTimeMeFragment: Fragment? = null
|
|
|
private var mCurPosition = 0 //当前Fragment选中的索引
|
|
|
private var mClickPage = 0 //当前Fragment选中的索引
|
|
|
|
|
@@ -73,22 +76,27 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
if (isConnected) {
|
|
|
when (mCurPosition) {
|
|
|
0 -> {
|
|
|
- mHomeFragment?.let {
|
|
|
+ mPartTimeHomeFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
}
|
|
|
1 -> {
|
|
|
- mEWalletFragment?.let {
|
|
|
+ mPartTimeActiveFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
}
|
|
|
2 -> {
|
|
|
- mNewsFeedFragment?.let {
|
|
|
+ mPartTimeWalletFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
}
|
|
|
3 -> {
|
|
|
- mProfileFragment?.let {
|
|
|
+ mPartTimeTrainFragment?.let {
|
|
|
+ if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ 4 -> {
|
|
|
+ mPartTimeMeFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
}
|
|
@@ -105,16 +113,19 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
|
|
|
when (index) {
|
|
|
0 -> {
|
|
|
- targetFragment = mHomeFragment
|
|
|
+ targetFragment = mPartTimeHomeFragment
|
|
|
}
|
|
|
1 -> {
|
|
|
- targetFragment = mEWalletFragment
|
|
|
+ targetFragment = mPartTimeActiveFragment
|
|
|
}
|
|
|
2 -> {
|
|
|
- targetFragment = mNewsFeedFragment
|
|
|
+ targetFragment = mPartTimeWalletFragment
|
|
|
}
|
|
|
3 -> {
|
|
|
- targetFragment = mProfileFragment
|
|
|
+ targetFragment = mPartTimeTrainFragment
|
|
|
+ }
|
|
|
+ 4 -> {
|
|
|
+ targetFragment = mPartTimeMeFragment
|
|
|
}
|
|
|
else -> {
|
|
|
targetFragment = null
|
|
@@ -148,23 +159,26 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
private fun setupStatusBarColor() {
|
|
|
//只有Profile页面变白色
|
|
|
when (mCurPosition) {
|
|
|
- 1, 3 -> setStatusBarWhiteText()
|
|
|
+ 1, 2, 4 -> setStatusBarWhiteText()
|
|
|
else -> setStatusBarBlackText()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// 隐藏 fragment
|
|
|
private fun hideFragment(transaction: FragmentTransaction) {
|
|
|
- mHomeFragment?.let {
|
|
|
+ mPartTimeHomeFragment?.let {
|
|
|
+ transaction.hide(it)
|
|
|
+ }
|
|
|
+ mPartTimeActiveFragment?.let {
|
|
|
transaction.hide(it)
|
|
|
}
|
|
|
- mEWalletFragment?.let {
|
|
|
+ mPartTimeWalletFragment?.let {
|
|
|
transaction.hide(it)
|
|
|
}
|
|
|
- mNewsFeedFragment?.let {
|
|
|
+ mPartTimeTrainFragment?.let {
|
|
|
transaction.hide(it)
|
|
|
}
|
|
|
- mProfileFragment?.let {
|
|
|
+ mPartTimeMeFragment?.let {
|
|
|
transaction.hide(it)
|
|
|
}
|
|
|
}
|
|
@@ -175,28 +189,39 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
//传递进来的Position设置为选中:
|
|
|
when (position) {
|
|
|
0 -> {
|
|
|
- mBinding.groupTabHome.isSelected = true
|
|
|
- mBinding.groupTabWallet.isSelected = false
|
|
|
- mBinding.groupTabNewsfeed.isSelected = false
|
|
|
- mBinding.groupTabMe.isSelected = false
|
|
|
+ mBinding.llTabHome.isSelected = true
|
|
|
+ mBinding.llTabActive.isSelected = false
|
|
|
+ mBinding.llTabWallet.isSelected = false
|
|
|
+ mBinding.llTabTrain.isSelected = false
|
|
|
+ mBinding.llTabMe.isSelected = false
|
|
|
}
|
|
|
1 -> {
|
|
|
- mBinding.groupTabHome.isSelected = false
|
|
|
- mBinding.groupTabWallet.isSelected = true
|
|
|
- mBinding.groupTabNewsfeed.isSelected = false
|
|
|
- mBinding.groupTabMe.isSelected = false
|
|
|
+ mBinding.llTabHome.isSelected = false
|
|
|
+ mBinding.llTabActive.isSelected = true
|
|
|
+ mBinding.llTabWallet.isSelected = false
|
|
|
+ mBinding.llTabTrain.isSelected = false
|
|
|
+ mBinding.llTabMe.isSelected = false
|
|
|
}
|
|
|
2 -> {
|
|
|
- mBinding.groupTabHome.isSelected = false
|
|
|
- mBinding.groupTabWallet.isSelected = false
|
|
|
- mBinding.groupTabNewsfeed.isSelected = true
|
|
|
- mBinding.groupTabMe.isSelected = false
|
|
|
+ mBinding.llTabHome.isSelected = false
|
|
|
+ mBinding.llTabActive.isSelected = false
|
|
|
+ mBinding.llTabWallet.isSelected = true
|
|
|
+ mBinding.llTabTrain.isSelected = false
|
|
|
+ mBinding.llTabMe.isSelected = false
|
|
|
}
|
|
|
3 -> {
|
|
|
- mBinding.groupTabHome.isSelected = false
|
|
|
- mBinding.groupTabWallet.isSelected = false
|
|
|
- mBinding.groupTabNewsfeed.isSelected = false
|
|
|
- mBinding.groupTabMe.isSelected = true
|
|
|
+ mBinding.llTabHome.isSelected = false
|
|
|
+ mBinding.llTabActive.isSelected = false
|
|
|
+ mBinding.llTabWallet.isSelected = false
|
|
|
+ mBinding.llTabTrain.isSelected = true
|
|
|
+ mBinding.llTabMe.isSelected = false
|
|
|
+ }
|
|
|
+ 4 -> {
|
|
|
+ mBinding.llTabHome.isSelected = false
|
|
|
+ mBinding.llTabActive.isSelected = false
|
|
|
+ mBinding.llTabWallet.isSelected = false
|
|
|
+ mBinding.llTabTrain.isSelected = false
|
|
|
+ mBinding.llTabMe.isSelected = true
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -206,10 +231,11 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
*/
|
|
|
private fun initFragment() {
|
|
|
// 正常情况下初始化
|
|
|
- mHomeFragment = HomeFragment()
|
|
|
- mEWalletFragment = YYRouterService.eWalletComponentServer?.obtainEWalletMainFragment()
|
|
|
- mNewsFeedFragment = YYRouterService.newsfeedComponentServer?.obtainNewsFeedMainFragment()
|
|
|
- mProfileFragment = YYRouterService.parttimeComponentServer?.obtainPartTimeProfileFragment()
|
|
|
+ mPartTimeHomeFragment = PartTimeHomeFragment()
|
|
|
+ mPartTimeActiveFragment = PartTimeActivesFragment()
|
|
|
+ mPartTimeWalletFragment = YYRouterService.eWalletComponentServer?.obtainEWalletMainFragment()
|
|
|
+ mPartTimeTrainFragment = PartTimeTrainFragment()
|
|
|
+ mPartTimeMeFragment = PartTimeProfileFragment()
|
|
|
}
|
|
|
|
|
|
// activity的销毁标识
|
|
@@ -228,12 +254,14 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
val f1 = manager.findFragmentByTag("1")
|
|
|
val f2 = manager.findFragmentByTag("2")
|
|
|
val f3 = manager.findFragmentByTag("3")
|
|
|
+ val f4 = manager.findFragmentByTag("4")
|
|
|
|
|
|
// 复用
|
|
|
- mHomeFragment = f0 ?: HomeFragment()
|
|
|
- mEWalletFragment = f1 ?: YYRouterService.eWalletComponentServer?.obtainEWalletMainFragment()
|
|
|
- mNewsFeedFragment = f2 ?: YYRouterService.newsfeedComponentServer?.obtainNewsFeedMainFragment()
|
|
|
- mProfileFragment = f3 ?: YYRouterService.parttimeComponentServer?.obtainPartTimeProfileFragment()
|
|
|
+ mPartTimeHomeFragment = f0 ?: PartTimeHomeFragment()
|
|
|
+ mPartTimeActiveFragment = f1 ?: PartTimeActivesFragment()
|
|
|
+ mPartTimeWalletFragment = f2 ?: YYRouterService.eWalletComponentServer?.obtainEWalletMainFragment()
|
|
|
+ mPartTimeTrainFragment = f3 ?: PartTimeTrainFragment()
|
|
|
+ mPartTimeMeFragment = f4 ?: PartTimeProfileFragment()
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -255,7 +283,7 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
mClickPage = 0
|
|
|
if (mClickPage == mCurPosition) {
|
|
|
//重复点击
|
|
|
- mHomeFragment?.let {
|
|
|
+ mPartTimeHomeFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
} else {
|
|
@@ -267,7 +295,7 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
mClickPage = 1
|
|
|
if (mClickPage == mCurPosition) {
|
|
|
//重复点击
|
|
|
- mEWalletFragment?.let {
|
|
|
+ mPartTimeActiveFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
} else {
|
|
@@ -279,7 +307,7 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
mClickPage = 2
|
|
|
if (mClickPage == mCurPosition) {
|
|
|
//重复点击
|
|
|
- mNewsFeedFragment?.let {
|
|
|
+ mPartTimeWalletFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
} else {
|
|
@@ -288,27 +316,27 @@ class PartTimeMainActivity : YYBaseVDBActivity<PartTimeMainViewModel, ActivityPa
|
|
|
}
|
|
|
|
|
|
fun switchTrain() {
|
|
|
- mClickPage = 2
|
|
|
+ mClickPage = 3
|
|
|
if (mClickPage == mCurPosition) {
|
|
|
//重复点击
|
|
|
- mNewsFeedFragment?.let {
|
|
|
+ mPartTimeTrainFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
} else {
|
|
|
- switchFragment(2)
|
|
|
+ switchFragment(3)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//切换Me页面Tab
|
|
|
fun switchMe() {
|
|
|
- mClickPage = 3
|
|
|
+ mClickPage = 4
|
|
|
if (mClickPage == mCurPosition) {
|
|
|
//重复点击
|
|
|
- mProfileFragment?.let {
|
|
|
+ mPartTimeMeFragment?.let {
|
|
|
if (it is IFragmentRefresh) (it as IFragmentRefresh).scrollTopRefresh()
|
|
|
}
|
|
|
} else {
|
|
|
- switchFragment(3)
|
|
|
+ switchFragment(4)
|
|
|
}
|
|
|
}
|
|
|
|