T findViewById(int id) {
+ if (mRootView == null) {
+ mRootView = getView();
+ }
+ if (mRootView != null) {
+ return (T) mRootView.findViewById(id);
+ }
+ return null;
+ }
+
+ @Nullable
+ @Override
+ public Context getContext() {
+ if (mContext == null) {
+ mContext = super.getContext();
+ }
+ return mContext;
+ }
+
+
+ @Override
+ public void onDestroyView() {
+ super.onDestroyView();
+ mRootView = null;
+ mContext = null;
+ }
+
+}
diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/mvp/MvpFragment.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/mvp/MvpFragment.java
index 3cd0acc457..ab4171511f 100644
--- a/foudations/mogo-commons/src/main/java/com/mogo/commons/mvp/MvpFragment.java
+++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/mvp/MvpFragment.java
@@ -1,16 +1,9 @@
package com.mogo.commons.mvp;
-import android.content.Context;
import android.os.Bundle;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.fragment.app.Fragment;
-
-import com.mogo.utils.logger.Logger;
/**
* @author congtaowang
@@ -18,68 +11,17 @@ import com.mogo.utils.logger.Logger;
*
* mvp fragment
*/
-public abstract class MvpFragment> extends Fragment implements IView {
+public abstract class MvpFragment> extends BaseFragment implements IView {
- private Context mContext;
protected P mPresenter;
- protected View mRootView;
-
- @Override
- public void onAttach(Context context) {
- super.onAttach(context);
- mContext = context;
- }
-
- @Nullable
- @Override
- public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- if (mRootView == null) {
- mRootView = inflater.inflate(getLayoutId(), container, false);
- } else {
- ViewGroup viewGroup = (ViewGroup) mRootView.getParent();
- if (viewGroup != null) {
- viewGroup.removeView(mRootView);
- }
- }
- return mRootView;
- }
-
- @Override
- public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
- }
-
- /**
- * 布局资源
- *
- * @return
- */
- protected abstract int getLayoutId();
-
- /**
- * 获取绑定的TAG标记
- * @return 返回唯一TAG标记
- */
- public abstract String getTagName();
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
- initViews();
- initViews(savedInstanceState);
mPresenter = createPresenter();
getViewLifecycleOwner().getLifecycle().addObserver(mPresenter);
}
- /**
- * 初始化控件,必须在初始化完成之后才可以实例化presenter,避免
- * presenter 生命周期错乱
- */
- protected abstract void initViews();
-
- protected void initViews(Bundle savedInstanceState) {
- }
-
/**
* 创建 presenter 实例
*
@@ -92,26 +34,6 @@ public abstract class MvpFragment> exten
return mPresenter;
}
- @Nullable
- protected T findViewById(int id) {
- if (mRootView == null) {
- mRootView = getView();
- }
- if (mRootView != null) {
- return (T) mRootView.findViewById(id);
- }
- return null;
- }
-
- @Nullable
- @Override
- public Context getContext() {
- if (mContext == null) {
- mContext = super.getContext();
- }
- return mContext;
- }
-
@Override
public void onDestroyView() {
super.onDestroyView();
@@ -119,7 +41,5 @@ public abstract class MvpFragment> exten
getViewLifecycleOwner().getLifecycle().removeObserver(mPresenter);
}
mPresenter = null;
- mRootView = null;
- mContext = null;
}
}
diff --git a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/AMapViewWrapper.java b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/AMapViewWrapper.java
index 9499e7bae8..33cfd2d8db 100644
--- a/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/AMapViewWrapper.java
+++ b/libraries/map-custom/src/main/java/com/mogo/map/impl/custom/AMapViewWrapper.java
@@ -26,6 +26,7 @@ import com.mogo.eagle.core.data.map.MogoLatLng;
import com.mogo.eagle.core.data.map.MogoLocation;
import com.mogo.eagle.core.function.call.map.CallerLocationUpdaterManager;
import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager;
+import com.mogo.eagle.core.function.call.map.CallerMapStyleListenerManager;
import com.mogo.eagle.core.utilcode.mogo.toast.TipToast;
import com.mogo.map.IMogoMap;
import com.mogo.map.IMogoMapView;
@@ -963,18 +964,18 @@ public class AMapViewWrapper implements IMogoMapView,
}
@Override
- public void onChangeMapStyle(int i) {
+ public void onChangeMapStyle(int styleId) {
EnumMapUI last = mCurrentUI;
- Logger.d(TAG, "currentMapStyle = %s", i);
+ Logger.d(TAG, "currentMapStyle = %s", styleId);
- if (i == MapAutoApi.MAP_STYLE_DAY
- || i == MapAutoApi.MAP_STYLE_DAY_NAV) {
+ if (styleId == MapAutoApi.MAP_STYLE_DAY
+ || styleId == MapAutoApi.MAP_STYLE_DAY_NAV) {
mCurrentUI = EnumMapUI.Type_Light;
- } else if (i == MapAutoApi.MAP_STYLE_NIGHT
- || i == MapAutoApi.MAP_STYLE_NIGHT_NAV) {
+ } else if (styleId == MapAutoApi.MAP_STYLE_NIGHT
+ || styleId == MapAutoApi.MAP_STYLE_NIGHT_NAV) {
mCurrentUI = EnumMapUI.Type_Night;
- } else if (i == MapAutoApi.MAP_STYLE_VR) {
+ } else if (styleId == MapAutoApi.MAP_STYLE_VR) {
mCurrentUI = EnumMapUI.Type_VR;
// 进入vr模式的时候自动切换到车头朝上
change2CarUp();
@@ -998,6 +999,7 @@ public class AMapViewWrapper implements IMogoMapView,
try {
Logger.d(TAG, "currentUI = %s", mCurrentUI);
MogoMapListenerHandler.getInstance().onMapModeChanged(mCurrentUI);
+ CallerMapStyleListenerManager.INSTANCE.invokeMapStyleChange(styleId);
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
index e78391ef90..4d7ed61433 100644
--- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
+++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
@@ -20,6 +20,7 @@ import androidx.fragment.app.Fragment;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.commons.context.ContextHolderUtil;
import com.mogo.commons.debug.DebugConfig;
+import com.mogo.commons.mvp.BaseFragment;
import com.mogo.commons.mvp.MvpActivity;
import com.mogo.commons.mvp.MvpFragment;
import com.mogo.eagle.core.data.constants.MoGoFragmentPaths;
@@ -202,7 +203,7 @@ public class MainActivity extends MvpActivity implement
loadOthersModules();
}
}, 1000);
- Log.i("timer", "cost " + (System.currentTimeMillis() - start) + "ms");
+ Log.i(TAG, "App launch timer cost " + (System.currentTimeMillis() - start) + "ms");
});
loadFunctionFragment();
loadFunctionMapView();
@@ -266,7 +267,6 @@ public class MainActivity extends MvpActivity implement
}
protected void loadContainerModules() {
- //MogoModulesManager.getInstance().loadWaringModule(R.id.module_main_id_waring_fragment);
MogoModulesManager.getInstance().loadEntrancesModule(R.id.module_main_id_entrance_fragment_container);
MogoModulesManager.getInstance().loadEventPanelModule(R.id.module_main_id_event_panel_fragment_container);
}
@@ -280,9 +280,13 @@ public class MainActivity extends MvpActivity implement
@Override
public void loadFunctionFragment() {
- // 加载 HMI 框架
- MvpFragment fragmentHdMap = (MvpFragment) ARouter.getInstance().build(MoGoFragmentPaths.PATH_FRAGMENT_HMI).navigation();
+ // 加载 HMI 图层
+ BaseFragment fragmentHdMap = (BaseFragment) ARouter.getInstance().build(MoGoFragmentPaths.PATH_FRAGMENT_HMI).navigation();
addFragment(fragmentHdMap, fragmentHdMap.getTagName(), R.id.module_main_id_waring_fragment);
+
+ // 加载 小地图 图层
+ BaseFragment fragmentSmpMap = (BaseFragment) ARouter.getInstance().build(MoGoFragmentPaths.PATH_FRAGMENT_SMP).navigation();
+ addFragment(fragmentSmpMap, fragmentSmpMap.getTagName(), R.id.module_main_id_smp_fragment);
}
/**