拆分换肤逻辑
This commit is contained in:
@@ -43,6 +43,9 @@ import com.mogo.service.tanlu.IMogoTanluProvider;
|
||||
import com.mogo.service.tanlu.IMogoTanluUiProvider;
|
||||
import com.mogo.service.windowview.IMogoTopViewManager;
|
||||
import com.mogo.service.windowview.IMogoWindowManager;
|
||||
import com.mogo.skin.support.IMogoSkinSupportInstaller;
|
||||
import com.mogo.skin.support.MogoSkinManager;
|
||||
import com.mogo.skin.support.SkinSupportInstallerConstants;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
|
||||
/**
|
||||
@@ -224,7 +227,12 @@ public class MogoServiceApis implements IMogoServiceApis {
|
||||
return getApiInstance(IMogoTanluUiProvider.class, MogoServicePaths.PATH_TANLU_UI_API);
|
||||
}
|
||||
|
||||
private static < T extends IProvider > T getApiInstance(Class< T > clazz, String path ) {
|
||||
@Override
|
||||
public IMogoSkinSupportInstaller getSkinSupportInstallerApi() {
|
||||
return getApiInstance( IMogoSkinSupportInstaller.class, SkinSupportInstallerConstants.PATH);
|
||||
}
|
||||
|
||||
private static < T extends IProvider > T getApiInstance( Class< T > clazz, String path ) {
|
||||
T inst = SingletonsHolder.get( clazz );
|
||||
if ( inst == null ) {
|
||||
synchronized ( sLock ) {
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.util.Log;
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.mogo.commons.AbsMogoApplication;
|
||||
import com.mogo.map.MogoOverlayManager;
|
||||
import com.mogo.map.uicontroller.EnumMapUI;
|
||||
import com.mogo.module.common.utils.CarSeries;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.adas.IMogoADASController;
|
||||
@@ -18,8 +19,13 @@ import com.mogo.service.impl.MogoServiceApis;
|
||||
import com.mogo.service.impl.singleton.SingletonsHolder;
|
||||
import com.mogo.service.impl.statusmanager.MogoStatusManager;
|
||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
import com.mogo.skin.support.SkinMode;
|
||||
import com.mogo.utils.UiThreadHandler;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
import com.zhidao.adasconfig.api.AdasConfigApiController;
|
||||
import com.zhidao.adasconfig.common.config.EnumCarChatIncognitoMode;
|
||||
import com.zhidao.adasconfig.common.config.EnumCarHeading;
|
||||
import com.zhidao.adasconfig.common.config.EnumSkinStyle;
|
||||
import com.zhidao.autopilot.support.api.AutopilotServiceManage;
|
||||
import com.zhidao.autopilot.support.api.IAutopilotServiceStatusListener;
|
||||
|
||||
@@ -197,6 +203,47 @@ public class MogoADASController implements IMogoADASController {
|
||||
AutopilotServiceManage.getInstance().setUseAlgorithm( open );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void changeAdasControlMode( EnumMapUI ui ) {
|
||||
|
||||
Logger.d( TAG, "new Mode: " + ui.name() );
|
||||
switch ( ui ) {
|
||||
case CarUp_2D:
|
||||
case CarUp_3D:
|
||||
AdasConfigApiController.getInstance().setUserCarHeading( EnumCarHeading.CAR_HEADING_UP );
|
||||
break;
|
||||
case NorthUP_2D:
|
||||
AdasConfigApiController.getInstance().setUserCarHeading( EnumCarHeading.NORTH_UP );
|
||||
break;
|
||||
case Type_Light:
|
||||
AdasConfigApiController.getInstance().setUserSkinModel( EnumSkinStyle.WHITE );
|
||||
break;
|
||||
case Type_Night:
|
||||
AdasConfigApiController.getInstance().setUserSkinModel( EnumSkinStyle.BLACK );
|
||||
break;
|
||||
case Type_AUTO_LIGHT_Night:
|
||||
AdasConfigApiController.getInstance().setUserSkinModel( EnumSkinStyle.AUTO );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void changeAdasControlVisibleMode( boolean visible ) {
|
||||
Logger.d( TAG, "new visibility: " + visible );
|
||||
AdasConfigApiController.getInstance().setUserCarChatIncognitoModel( visible ? EnumCarChatIncognitoMode.OPEN : EnumCarChatIncognitoMode.CLOSE );
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnumMapUI getCurrentSkinMode() {
|
||||
EnumSkinStyle skinStyle = AdasConfigApiController.getInstance().getUserSkinModel();
|
||||
if ( skinStyle == EnumSkinStyle.BLACK ) {
|
||||
return EnumMapUI.Type_Night;
|
||||
} else if ( skinStyle == EnumSkinStyle.WHITE ) {
|
||||
return EnumMapUI.Type_Light;
|
||||
}
|
||||
return EnumMapUI.Type_AUTO_LIGHT_Night;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void release() {
|
||||
mIsReleased = true;
|
||||
|
||||
Reference in New Issue
Block a user