diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt index a0bd15cc00..150408add5 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt @@ -58,7 +58,6 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { private fun showFragment() { val supportFragmentManager: FragmentManager? = activity?.supportFragmentManager - injectStatusBar() val fragment = if (LoginStatusManager.isLogin()) { val fragment = getFragment() LoginStatusManager.resetFragment() @@ -70,6 +69,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { commonService?.resetFragment() LoginStatusManager.getFragment() } + injectStatusBar() d(TAG, "切换 fragment:${fragment}") @@ -199,7 +199,6 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { } override fun onBusinessChangeDebug(businessEnum: BusinessEnum) { - injectStatusBar() if (businessEnum == BusinessEnum.None) { CallerHmiManager.hideToolsView() ToggleDebugView.toggleDebugView.dismiss() @@ -224,6 +223,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { back.commitAllowingStateLoss() } } + injectStatusBar() } private fun injectStatusBar() { @@ -235,10 +235,16 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { contentView.fitsSystemWindows = false decorView.clipToPadding = false var statusBarView = decorView.findViewWithTag("status_bar") - if(statusBarView!=null){ - return - } val statusBar = commonService?.getStatusBarView(it) + if(statusBarView==null){ + + }else{ + if(statusBar == statusBarView||statusBar==null){ + return + }else{ + removeStatusBar() + } + } statusBarView = statusBar ?: StatusBarView(it) statusBarView.tag = "status_bar" val statusBarLP = FrameLayout.LayoutParams(