diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/ToolKitTabView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/ToolKitTabView.kt index d77de2039f..bf66ab0c13 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/ToolKitTabView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/ToolKitTabView.kt @@ -3,14 +3,20 @@ package com.mogo.eagle.core.function.hmi.bone.tab import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater +import android.view.View import androidx.constraintlayout.widget.ConstraintLayout +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.findViewTreeViewModelStoreOwner import androidx.recyclerview.widget.GridLayoutManager import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitBean +import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitDataManager import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitDefaultItemView import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitListAdapter +import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitViewModel import com.mogo.eagle.core.utilcode.mogo.view.GridSpacingItemDecoration import kotlinx.android.synthetic.main.view_tool_kit_tab.view.recyclerView +import kotlinx.coroutines.flow.asFlow import me.jessyan.autosize.utils.AutoSizeUtils import java.lang.ref.WeakReference @@ -24,24 +30,15 @@ class ToolKitTabView @JvmOverloads constructor( private const val TAG = "ToolKitTabView" } - val toolKitList = ArrayList()?.also { - List(20) { index -> - it += ToolKitBean( - ToolKitDefaultItemView(context).apply { - setData("标题标题标题标题标题$index", R.drawable.icon_toolkit_item_tiaoshi) - } - ) - } - } - + private var viewModel: ToolKitViewModel? = null init { LayoutInflater.from(context).inflate(R.layout.view_tool_kit_tab, this, true) - initView() } override fun onAttachedToWindow() { super.onAttachedToWindow() + initView() } override fun onDetachedFromWindow() { @@ -51,8 +48,9 @@ class ToolKitTabView @JvmOverloads constructor( private fun initView() { // 设置布局管理器为GridLayoutManager,每行3列 recyclerView.layoutManager = GridLayoutManager(context, 3) + val adapter = ToolKitListAdapter(ToolKitDataManager.toolList) // 设置适配器 - recyclerView.adapter = ToolKitListAdapter(toolKitList) + recyclerView.adapter = adapter recyclerView.addItemDecoration( GridSpacingItemDecoration( 3, @@ -61,6 +59,12 @@ class ToolKitTabView @JvmOverloads constructor( false ) ) + viewModel = findViewTreeViewModelStoreOwner()?.let { + ViewModelProvider(it).get(ToolKitViewModel::class.java) + } + viewModel?.toolKitList?.observeForever { data -> + adapter.items = data + adapter.notifyDataSetChanged() + } } - } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitBean.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitBean.kt index 06190bf1e6..03e1ea24ae 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitBean.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitBean.kt @@ -2,4 +2,4 @@ package com.mogo.eagle.core.function.hmi.bone.toolkit import android.view.View -data class ToolKitBean(val itemView: View) +data class ToolKitBean(val toolTag: String, val itemView: View) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt new file mode 100644 index 0000000000..dbcdd93fe3 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitDataManager.kt @@ -0,0 +1,103 @@ +package com.mogo.eagle.core.function.hmi.bone.toolkit + +import android.content.Context +import android.view.View +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener +import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils +import com.mogo.eagle.core.utilcode.util.ToastUtils +import java.util.concurrent.ConcurrentHashMap + +object ToolKitDataManager : IToolKitItemClickListener { + const val TAG = "ToolKitDataManager" + + + enum class ToolTypeEnum { + DEBUG_PANEL, //调试面板 + OPERATION_PANEL, //运营面板 + TAKE_OVER_HISTORY, //接管记录 + KILL_APP, //杀死 APP + RESTART_SYSTEM, //重启系统 + STOP_SERVICE //停止服务 + } + + private val listeners by lazy { ConcurrentHashMap() } + + val toolList = ArrayList() + + fun addListener(tag: String, listener: IToolKitItemClickListener) { + if (listeners.containsKey(tag)) { + return + } + listeners[tag] = listener + } + + fun removeListener(tag: String) { + listeners.remove(tag) + } + + fun invokeItemClick(toolTag: String) { + listeners.values.forEach { itx -> + itx.onItemClick(toolTag) + } + } + + fun init(ctx: Context) { + if (!AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + return + } + // 添加默认的工具箱items + toolList.also { + it += ToolKitBean( + ToolTypeEnum.DEBUG_PANEL.name, + getDefaultItemView(ctx, "调试面板", R.drawable.icon_toolkit_item_debug_panel) + ) + it += ToolKitBean( + ToolTypeEnum.OPERATION_PANEL.name, + getDefaultItemView(ctx, "运营面板", R.drawable.icon_toolkit_item_operation_panel) + ) + it += ToolKitBean( + ToolTypeEnum.TAKE_OVER_HISTORY.name, + getDefaultItemView(ctx, "接管记录", R.drawable.icon_toolkit_item_take_over_history) + ) + it += ToolKitBean( + ToolTypeEnum.KILL_APP.name, + getDefaultItemView(ctx, "杀死APP", R.drawable.icon_toolkit_item_kill_app) + ) + it += ToolKitBean( + ToolTypeEnum.RESTART_SYSTEM.name, + getDefaultItemView(ctx, "重启系统", R.drawable.icon_toolkit_item_restart_system) + ) + it += ToolKitBean( + ToolTypeEnum.STOP_SERVICE.name, + getDefaultItemView(ctx, "停止服务", R.drawable.icon_toolkit_item_stop_service) + ) + } + addListener(TAG, this) + } + + fun unInit() { + if (!AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + return + } + removeListener(TAG) + toolList.clear() + } + + /** + * 生成默认风格的工具item view(上面icon, 下面名称) + */ + private fun getDefaultItemView(context: Context, toolName: String, drawableId: Int): View { + return ToolKitDefaultItemView(context).apply { + setData(toolName, drawableId) + } + } + + override fun onItemClick(toolTag: String) { + ToastUtils.showShort(toolTag) + when (toolTag) { + + } + } +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt index 952cc863f6..abccb3860d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitListAdapter.kt @@ -7,7 +7,7 @@ import android.widget.FrameLayout import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.function.hmi.R -class ToolKitListAdapter(private val items: List) : +class ToolKitListAdapter(var items: List) : RecyclerView.Adapter() { class ToolKitListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { @@ -31,6 +31,9 @@ class ToolKitListAdapter(private val items: List) : (it.parent as ViewGroup).removeView(it) } holder.containerView.addView(it) + it.setOnClickListener { + ToolKitDataManager.invokeItemClick(data.toolTag) + } } } } @@ -38,8 +41,4 @@ class ToolKitListAdapter(private val items: List) : } override fun getItemCount() = items.size - - override fun onViewRecycled(holder: RecyclerView.ViewHolder) { - super.onViewRecycled(holder) - } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitViewModel.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitViewModel.kt new file mode 100644 index 0000000000..52ab892c44 --- /dev/null +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/toolkit/ToolKitViewModel.kt @@ -0,0 +1,16 @@ +package com.mogo.eagle.core.function.hmi.bone.toolkit + +import androidx.lifecycle.MutableLiveData +import androidx.lifecycle.ViewModel + +class ToolKitViewModel : ViewModel() { + val toolKitList: MutableLiveData> = MutableLiveData() + + init { + toolKitList.value = ToolKitDataManager.toolList + } + + fun updateToolKitData(newData: ArrayList) { + toolKitList.value = newData + } +} diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiProvider.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiProvider.kt index 67e61a3bc0..705078d677 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiProvider.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiProvider.kt @@ -26,16 +26,18 @@ import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State +import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager +import com.mogo.eagle.core.function.hmi.bone.status.fsm.FSMStatusDetailWindowManager +import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitDataManager import com.mogo.eagle.core.function.hmi.ui.camera.RoadVideoDialog import com.mogo.eagle.core.function.hmi.ui.lookaround.M1LookAroundView import com.mogo.eagle.core.function.hmi.ui.notice.DispatchDialogManager import com.mogo.eagle.core.function.hmi.ui.notice.NoticeCheckDialog import com.mogo.eagle.core.function.hmi.ui.notice.traffic.NoticeTrafficDialog import com.mogo.eagle.core.function.hmi.ui.setting.CameraLiveView.Companion.cameraLiveView -import com.mogo.eagle.core.function.hmi.bone.status.fsm.FSMStatusDetailWindowManager import com.mogo.eagle.core.function.hmi.ui.setting.StatusView import com.mogo.eagle.core.function.hmi.ui.setting.ToolsView.Companion.toolsView import com.mogo.eagle.core.function.hmi.ui.tools.AdUpgradeDialog @@ -430,4 +432,8 @@ class MoGoHmiProvider : IMoGoHmiProvider { override fun dismissGreenWave() { CallerHmiViewControlListenerManager.invokeGreenWaveDismiss() } + + override fun registerToolKitDefaultItemClickListener(tag: String, listener: IToolKitItemClickListener) { + ToolKitDataManager.addListener(TAG, listener) + } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt index 4b49a3b93c..e829ec4543 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.kt @@ -36,6 +36,7 @@ import com.mogo.eagle.core.function.call.och.CallerOchCustomViewManager import com.mogo.eagle.core.function.call.setting.CallerRequestActivityHandleManager import com.mogo.eagle.core.function.call.startup.CallerStartUpManager.initStageTwo import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.function.hmi.bone.toolkit.ToolKitDataManager import com.mogo.eagle.core.function.main.modules.MogoModulesManager import com.mogo.eagle.core.function.main.windowview.FloatingViewHandler import com.mogo.eagle.core.utilcode.mogo.AppLaunchTimeUtils @@ -82,6 +83,7 @@ open class MainActivity : MvpActivity(), MainView, initConnectInfoRV() CallerHmiManager.init(this) CallerOchCustomViewManager.init(this) + ToolKitDataManager.init(this) // 检查是否有悬浮窗权限 if (Settings.canDrawOverlays(this)) { @@ -322,6 +324,7 @@ open class MainActivity : MvpActivity(), MainView, override fun onDestroy() { super.onDestroy() + ToolKitDataManager.unInit() val properties = java.util.HashMap() properties["app_destroy_time"] = System.currentTimeMillis() MogoAnalyticUtils.track("app_lifecycle_destroy", properties) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_tiaoshi.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_debug_panel.png similarity index 100% rename from core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_tiaoshi.png rename to core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_debug_panel.png diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_kill_app.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_kill_app.png new file mode 100644 index 0000000000..f54550aec4 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_kill_app.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_operation_panel.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_operation_panel.png new file mode 100644 index 0000000000..8630401979 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_operation_panel.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_restart_system.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_restart_system.png new file mode 100644 index 0000000000..97fd9d550e Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_restart_system.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service.png new file mode 100644 index 0000000000..8d0a33ff78 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_stop_service.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_take_over_history.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_take_over_history.png new file mode 100644 index 0000000000..136cd60890 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_toolkit_item_take_over_history.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_tab.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_tab.xml index 639e155f8c..dac1ff892a 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_tab.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_tool_kit_tab.xml @@ -32,9 +32,9 @@ android:layout_height="0dp" android:layout_marginLeft="@dimen/dp_56" android:layout_marginRight="@dimen/dp_56" + android:layout_marginBottom="@dimen/dp_200" android:clipToPadding="false" android:paddingTop="@dimen/dp_62" - android:paddingBottom="@dimen/dp_200" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt index 9187ba378f..8dadb96bc1 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoHmiProvider.kt @@ -11,6 +11,7 @@ import com.mogo.eagle.core.data.map.Infrastructure import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State +import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener /** * @author xiaoyuzhou @@ -240,4 +241,9 @@ interface IMoGoHmiProvider :IProvider{ * 隐藏绿波通弹窗 */ fun dismissGreenWave() + + /** + * 注册 工具箱 item点击事件监听 (默认样式item的点击事件监听,自定义样式的item的点击交给view自己处理) + */ + fun registerToolKitDefaultItemClickListener( tag: String, listener: IToolKitItemClickListener) } \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IOchFunctionCall.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IOchFunctionCall.kt new file mode 100644 index 0000000000..21ea45b889 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IOchFunctionCall.kt @@ -0,0 +1,13 @@ +package com.mogo.eagle.core.function.api.och + +/** + * 定义给 Och 业务层调用的接口 + */ +interface IOchFunctionCall { + + /** + * 注册 工具箱 item点击事件监听 (默认样式item的点击事件监听,自定义样式的item的点击交给view自己处理) + */ + fun registerToolKitDefaultItemClickListener(tag: String, listener: IToolKitItemClickListener) {} + +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt new file mode 100644 index 0000000000..6c45cf953f --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/och/IToolKitItemClickListener.kt @@ -0,0 +1,8 @@ +package com.mogo.eagle.core.function.api.och + +/** + * 工具箱-item点击事件监听 + */ +interface IToolKitItemClickListener { + fun onItemClick(toolTag: String) +} \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt index 89312f9ede..bc06dbcb1e 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt @@ -16,6 +16,7 @@ import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener import com.mogo.eagle.core.function.api.hmi.xiaozhi.event.Event import com.mogo.eagle.core.function.api.hmi.xiaozhi.listener.OnXiaoZhiStateChangeListener import com.mogo.eagle.core.function.api.hmi.xiaozhi.state.State +import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener /** * @author xiaoyuzhou @@ -352,4 +353,11 @@ object CallerHmiManager { fun dismissGreenWave() { hmiProviderApi?.dismissGreenWave() } + + /** + * 注册 工具箱 item点击事件监听 (默认样式item的点击事件监听,自定义样式的item的点击交给view自己处理) + */ + fun registerToolKitDefaultItemClickListener(tag: String, listener: IToolKitItemClickListener) { + hmiProviderApi?.registerToolKitDefaultItemClickListener(tag, listener) + } } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchCustomViewManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchCustomViewManager.kt index 0efa2df3c7..882ff65b56 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchCustomViewManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchCustomViewManager.kt @@ -30,7 +30,7 @@ object CallerOchCustomViewManager { } /** - * 创建 自动自动驾驶 自定义 View + * 创建 启动自动驾驶 自定义 View */ fun getStartAutopilotView(context: Context?): View? { return ochCustomViewProviderApi?.createStartAutopilotView(context) diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchFunctionCallManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchFunctionCallManager.kt new file mode 100644 index 0000000000..df1126fcf8 --- /dev/null +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/och/CallerOchFunctionCallManager.kt @@ -0,0 +1,23 @@ +package com.mogo.eagle.core.function.call.och + +import com.mogo.eagle.core.function.api.och.IOchFunctionCall +import com.mogo.eagle.core.function.api.och.IToolKitItemClickListener +import com.mogo.eagle.core.function.call.hmi.CallerHmiManager + +/** + * 实现给 Och 业务层调用的接口 + */ +object CallerOchFunctionCallManager : IOchFunctionCall { + const val TAG = "CallerOchFunctionCallManager" + + /** + * 注册 工具箱 item点击事件监听 (默认样式item的点击事件监听,自定义样式的item的点击交给view自己处理) + */ + override fun registerToolKitDefaultItemClickListener( + tag: String, + listener: IToolKitItemClickListener + ) { + CallerHmiManager.registerToolKitDefaultItemClickListener(tag, listener) + } + +} \ No newline at end of file