拆分换肤逻辑

This commit is contained in:
wangcongtao
2020-08-31 14:55:02 +08:00
parent 722919edec
commit 97ce18650b
22 changed files with 363 additions and 88 deletions

View File

@@ -24,6 +24,7 @@ import com.mogo.map.uicontroller.MapControlResult;
import com.mogo.module.common.map.CustomNaviInterrupter;
import com.mogo.service.IMogoServiceApis;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.adas.IMogoADASControlStatusChangedListener;
import com.mogo.service.intent.IMogoIntentListener;
import com.mogo.service.intent.IMogoIntentManager;
import com.mogo.service.launcher.IMogoLauncher;
@@ -50,9 +51,11 @@ public class MapPresenter extends Presenter< MapView > implements
IMogoIntentListener,
IMogoVoiceCmdCallBack,
IMogoNaviListener2,
OnMapControlCallback {
OnMapControlCallback,
IMogoADASControlStatusChangedListener {
private static final String TAG = "MapPresenter";
private IMogoServiceApis mApis;
private IMogoMapService mMogoMapService;
private IMogoIntentManager mMogoIntentManager;
private IMogoSearchManager mSearchManager;
@@ -79,6 +82,7 @@ public class MapPresenter extends Presenter< MapView > implements
public MapPresenter( MapView view ) {
super( view );
}
@Override
@@ -89,11 +93,18 @@ public class MapPresenter extends Presenter< MapView > implements
@Override
public void onCameraModeChanged( EnumMapUI mode ) {
mView.getUIController().changeMapMode( mode );
mApis.getAdasControllerApi().changeAdasControlMode( mode );
}
@Override
public void onDayNightModeChanged( EnumMapUI mode ) {
mView.getUIController().changeMapMode( mode );
mApis.getAdasControllerApi().changeAdasControlMode( mode );
}
@Override
public void onMapUiModeChanged( EnumMapUI mapUI ) {
mView.getUIController().changeMapMode( mapUI );
}
@Override
@@ -237,16 +248,16 @@ public class MapPresenter extends Presenter< MapView > implements
public void onCreate( @NonNull LifecycleOwner owner ) {
super.onCreate( owner );
IMogoServiceApis apis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation( getContext() );
mMogoMapService = apis.getMapServiceApi();
mMogoIntentManager = apis.getIntentManagerApi();
mSearchManager = apis.getSearchManagerApi();
mRefreshStrategyController = apis.getRefreshStrategyControllerApi();
mStatusManager = apis.getStatusManagerApi();
mRegisterCenter = apis.getRegisterCenterApi();
mApis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation( getContext() );
mMogoMapService = mApis.getMapServiceApi();
mMogoIntentManager = mApis.getIntentManagerApi();
mSearchManager = mApis.getSearchManagerApi();
mRefreshStrategyController = mApis.getRefreshStrategyControllerApi();
mStatusManager = mApis.getStatusManagerApi();
mRegisterCenter = mApis.getRegisterCenterApi();
mRegisterCenter.registerMogoNaviListener( TAG, this );
mLauncher = apis.getLauncherApi();
mMogoSearchManager = apis.getSearchManagerApi();
mLauncher = mApis.getLauncherApi();
mMogoSearchManager = mApis.getSearchManagerApi();
IMogoNavi mogoNavi = mMogoMapService.getNavi( getContext() );
mogoNavi.setCalculatePathDisplayBounds( new Rect(
@@ -270,6 +281,10 @@ public class MapPresenter extends Presenter< MapView > implements
initBroadcast();
mCustomVoiceCommandHandler = new MapControlCommandHandler();
mCustomVoiceCommandHandler.setCallback( this );
mRegisterCenter.registerADASControlStatusChangedListener( TAG, this );
final EnumMapUI mapUI = mApis.getAdasControllerApi().getCurrentSkinMode();
mMogoMapService.getMapUIController().changeMapMode( mapUI );
}
private void initBroadcast() {
@@ -296,6 +311,8 @@ public class MapPresenter extends Presenter< MapView > implements
if ( mAutoNaviReceiver != null ) {
mAutoNaviReceiver.unregister( mMogoIntentManager );
}
mRegisterCenter.unregisterMogoNaviListener( TAG );
mRegisterCenter.unregisterADASControlStatusChangedListener( TAG );
}
private void registerVoiceCmd() {