添加皮肤模块

This commit is contained in:
wangcongtao
2020-08-28 14:07:49 +08:00
parent b7110045e6
commit 8794ad282a
46 changed files with 684 additions and 68 deletions

View File

@@ -1,5 +1,6 @@
package com.mogo.launcher;
import android.app.Application;
import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
@@ -30,9 +31,15 @@ import com.mogo.module.widgets.MogoWidgetsProvider;
import com.mogo.service.IMogoServiceApis;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.passport.IMogoTicketCallback;
import com.mogo.skin.support.MogoSkinManager;
import com.mogo.skin.support.SkinMode;
import com.mogo.utils.UiThreadHandler;
import com.mogo.utils.logger.LogLevel;
import com.mogo.utils.logger.Logger;
import com.zhidao.adasconfig.api.AdasConfigApiController;
import com.zhidao.adasconfig.common.config.EnumCarChatIncognitoMode;
import com.zhidao.adasconfig.listener.IAdasSettingUIListener;
import com.zhidao.adasconfig.listener.IAdasSkinStyleListener;
import com.zhidao.boot.persistent.lib.PersistentManager;
import com.zhidao.mogo.module.left.panel.LeftPanelConst;
import com.zhidao.mogo.tanlu.api.TanluApiConst;
@@ -88,8 +95,8 @@ public class MogoApplication extends AbsMogoApplication {
MogoModulePaths.addBaseModule( new MogoModule( ServiceConst.PATH_REFRESH_STRATEGY, ServiceConst.PATH_REFRESH_STRATEGY ) );
MogoModulePaths.addBaseModule( new MogoModule( V2XConst.PATH_V2X_UI, V2XConst.MODULE_NAME ) );
MogoModulePaths.addBaseModule(new MogoModule( MogoServicePaths.PATH_STRATEGY_SHARE,"StrategyShare"));
MogoModulePaths.addBaseModule(new MogoModule(MogoServicePaths.PATH_MOGO_MONITOR, "MogoMonitor"));
MogoModulePaths.addBaseModule( new MogoModule( MogoServicePaths.PATH_STRATEGY_SHARE, "StrategyShare" ) );
MogoModulePaths.addBaseModule( new MogoModule( MogoServicePaths.PATH_MOGO_MONITOR, "MogoMonitor" ) );
MogoModulePaths.addModule( new MogoModule( V2XConst.PATH_EVENT_PANEL, V2XConst.MODULE_NAME_EVENT_PANEL ) );
MogoModulePaths.addModule( new MogoModule( PushUIConstants.PATH, PushUIConstants.NAME ) );
@@ -98,8 +105,7 @@ public class MogoApplication extends AbsMogoApplication {
Intent intent = new Intent( this, MogoMainService.class );
startService( intent );
}
initSkinStrategy();
listenerADASConfigChanged( this );
Log.i( "timer", "cost " + ( System.currentTimeMillis() - start ) + "ms" );
}
@@ -122,18 +128,6 @@ public class MogoApplication extends AbsMogoApplication {
super.asyncInitImpl();
}
private void initSkinStrategy(){
SkinCompatManager.withoutActivity(this)
.addInflater(new SkinAppCompatViewInflater()) // 基础控件换肤初始化
.addInflater(new SkinMaterialViewInflater()) // material design 控件换肤初始化[可选]
.addInflater(new SkinConstraintViewInflater()) // ConstraintLayout 控件换肤初始化[可选]
.addInflater(new SkinCardViewInflater()) // CardView v7 控件换肤初始化[可选]
.setSkinAllActivityEnable(true)
.setSkinStatusBarColorEnable(false) // 关闭状态栏换肤,默认打开[可选]
.setSkinWindowBackgroundEnable(false) // 关闭windowBackground换肤默认打开[可选]
.loadSkin();
}
@Override
protected void init() {
super.init();
@@ -187,6 +181,37 @@ public class MogoApplication extends AbsMogoApplication {
} );
}
private void listenerADASConfigChanged( Application application ) {
MogoSkinManager.getInstance().getInstaller().install( application );
AdasConfigApiController.getInstance().registerAdasSettingUiListener( new IAdasSettingUIListener() {
@Override
public void northModel() {
}
@Override
public void carHeadUp() {
}
@Override
public void switchCarChat( EnumCarChatIncognitoMode enumCarChatIncognitoMode ) {
}
} );
AdasConfigApiController.getInstance().registerAdasSettingSkinModelListener( new IAdasSkinStyleListener() {
@Override
public void whiteModel() {
MogoSkinManager.getInstance().getInstaller().loadSkin( SkinMode.Light );
}
@Override
public void blackModel() {
MogoSkinManager.getInstance().getInstaller().loadSkin( SkinMode.Night );
}
} );
AdasConfigApiController.getInstance().init( application );
}
@Override
protected void attachBaseContext( Context base ) {
super.attachBaseContext( base );