[1.0.0]
[状态栏通过Arout获取]
This commit is contained in:
yangyakun
2023-02-13 19:36:50 +08:00
parent 9c8e35bfb2
commit 1e83fd5566
7 changed files with 71 additions and 83 deletions

View File

@@ -25,6 +25,7 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiFloatViewManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager.getMapUIController
import com.mogo.eagle.core.function.call.startup.CallerStartUpManager.initStageTwo
@@ -97,7 +98,8 @@ open class MainActivity : MvpActivity<MainView?, MainPresenter?>(), MainView,
decorView.clipToPadding = false
var statusBarView = decorView.findViewWithTag<View>("status_bar")
if (statusBarView == null) {
statusBarView = statusBar
val statusBar = CallerHmiFloatViewManager.getView(this)
statusBarView = statusBar?:StatusBarView(this)
statusBarView.setTag("status_bar")
}
val statusBarLP = FrameLayout.LayoutParams(
@@ -109,19 +111,6 @@ open class MainActivity : MvpActivity<MainView?, MainPresenter?>(), MainView,
decorView.addView(statusBarView, statusBarLP)
}
/**
* 修改statusBar重新赋值
* @return StatusBarView
*/
protected var statusBar: View?=null
get() {
return if (field == null) {
StatusBarView(this)
}else{
field
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
calculateStartTime()

View File

@@ -35,6 +35,12 @@ public class MogoServicePaths {
@Deprecated
public static final String PATH_FLOAT_VIEW_MANAGER = "/floatview/api";
/**
* Status View
*/
@Keep
public static final String PATH_STATUS_VIEW_MANAGER = "/statusview/api";
/**
* v2x 模块
*/

View File

@@ -0,0 +1,18 @@
package com.mogo.eagle.core.function.api.hmi.view
import android.content.Context
import android.view.View
import android.widget.FrameLayout
import com.alibaba.android.arouter.facade.template.IProvider
/**
* 设置状态栏View
*/
interface IStatusViewLayout : IProvider{
/**
* 提供状态栏View
*/
fun getStatusView(context: Context):View
}

View File

@@ -1,9 +1,12 @@
package com.mogo.eagle.core.function.call.hmi
import android.content.Context
import android.view.View
import android.widget.FrameLayout
import com.alibaba.android.arouter.launcher.ARouter
import com.mogo.eagle.core.data.constants.MogoServicePaths.PATH_FLOAT_VIEW_MANAGER
import com.mogo.eagle.core.data.constants.MogoServicePaths.PATH_STATUS_VIEW_MANAGER
import com.mogo.eagle.core.function.api.hmi.view.IStatusViewLayout
import com.mogo.eagle.core.function.api.hmi.view.IViewLayoutSet
/**
@@ -14,6 +17,9 @@ object CallerHmiFloatViewManager {
private val floatViewProviderApi
get() = ARouter.getInstance().build(PATH_FLOAT_VIEW_MANAGER)
.navigation() as? IViewLayoutSet
private val statusViewProviderApi
get() = ARouter.getInstance().build(PATH_STATUS_VIEW_MANAGER)
.navigation() as? IStatusViewLayout
fun addView(view: View, params: FrameLayout.LayoutParams, movable: Boolean) {
floatViewProviderApi?.addView(view, params, movable)
@@ -22,4 +28,8 @@ object CallerHmiFloatViewManager {
fun removeView(view: View) {
floatViewProviderApi?.removeView(view)
}
fun getView(context:Context):View?{
return statusViewProviderApi?.getStatusView(context)
}
}