[6.4.0]
[temp]
This commit is contained in:
@@ -2,13 +2,12 @@ package com.magic.mogo.och.charter
|
||||
|
||||
import android.content.Context
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.fragment.app.FragmentActivity
|
||||
import com.alibaba.android.arouter.facade.annotation.Route
|
||||
import com.magic.mogo.och.charter.constant.CharterConst
|
||||
import com.magic.mogo.och.charter.fragment.DriverM1Fragment
|
||||
import com.mogo.eagle.core.function.api.base.IMoGoFunctionProvider
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.biz.provider.CommonService
|
||||
|
||||
|
||||
/**
|
||||
@@ -16,56 +15,18 @@ import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
* @date: 2023/2/22
|
||||
*/
|
||||
@Route(path = OchCommonConst.CHARTER_DRIVER)
|
||||
class CharterProvider: IMoGoFunctionProvider{
|
||||
class CharterProvider : CommonService {
|
||||
|
||||
private var mActivity: FragmentActivity? = null
|
||||
private var mContainerId: Int? = 0
|
||||
private var driverM1Fragment: Fragment? = null
|
||||
private lateinit var driverM1Fragment: Fragment
|
||||
private val TAG = CharterProvider::class.java.simpleName
|
||||
|
||||
override fun createCoverage(fragmentActivity: FragmentActivity?, integer: Int?): Fragment? {
|
||||
this.mContainerId = integer
|
||||
this.mActivity = fragmentActivity
|
||||
showFragment()
|
||||
return null
|
||||
override fun getFragment(): Fragment {
|
||||
return driverM1Fragment
|
||||
}
|
||||
|
||||
|
||||
private fun showFragment() {
|
||||
|
||||
val supportFragmentManager = mActivity?.supportFragmentManager
|
||||
if (driverM1Fragment == null) {
|
||||
d(TAG, "准备add fragment======")
|
||||
val fragmentByTag = supportFragmentManager?.findFragmentByTag(DriverM1Fragment.TAG)
|
||||
driverM1Fragment = if (fragmentByTag is DriverM1Fragment) {
|
||||
fragmentByTag
|
||||
} else {
|
||||
DriverM1Fragment()
|
||||
}
|
||||
if (!driverM1Fragment?.isAdded!!) {
|
||||
mContainerId?.let {
|
||||
supportFragmentManager?.beginTransaction()
|
||||
?.add(it, driverM1Fragment!!, DriverM1Fragment.TAG)?.commitAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
d(TAG, "准备show fragment")
|
||||
supportFragmentManager?.beginTransaction()?.show(driverM1Fragment!!)?.commitAllowingStateLoss()
|
||||
}
|
||||
|
||||
|
||||
override fun init(context: Context?) {
|
||||
d(SceneConstant.M_TAXI + TAG, "init")
|
||||
driverM1Fragment = DriverM1Fragment()
|
||||
}
|
||||
|
||||
override val functionName: String
|
||||
get() = ""
|
||||
|
||||
override fun onDestroy() {
|
||||
// 若不调用finish, 设置中打开关闭UITouch,会造成och fragment 重叠
|
||||
mActivity?.finish()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val TAG = CharterProvider::class.java.simpleName
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user