diff --git a/main-extensions/mogo-module-main-independent/src/main/java/com/zhidao/mogo/module/main/independent/MainIndependentActivity.java b/main-extensions/mogo-module-main-independent/src/main/java/com/zhidao/mogo/module/main/independent/MainIndependentActivity.java index 53b3136c4a..7d19201968 100644 --- a/main-extensions/mogo-module-main-independent/src/main/java/com/zhidao/mogo/module/main/independent/MainIndependentActivity.java +++ b/main-extensions/mogo-module-main-independent/src/main/java/com/zhidao/mogo/module/main/independent/MainIndependentActivity.java @@ -37,7 +37,7 @@ public class MainIndependentActivity extends MainActivity { // 事件面板 FrameLayout.LayoutParams eventPanelParams = ( ( FrameLayout.LayoutParams ) mEventPanel.getLayoutParams() ); eventPanelParams.leftMargin = getResources().getDimensionPixelSize( R.dimen.module_main_entrance_fragment_container_marginLeft ); - mEntrance.setLayoutParams( eventPanelParams ); + mEventPanel.setLayoutParams( eventPanelParams ); // 事件面板 FrameLayout.LayoutParams historyMessagePanelParams = ( ( FrameLayout.LayoutParams ) mEventPanel.getLayoutParams() ); diff --git a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java index 872b5f804f..f952d51835 100644 --- a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java +++ b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java @@ -5,6 +5,7 @@ import android.os.Bundle; import android.os.Process; import android.text.TextUtils; import android.view.View; +import android.widget.FrameLayout; import androidx.annotation.Nullable; @@ -13,6 +14,8 @@ import com.mogo.module.extensions.utils.ExtensionsConfig; import com.mogo.module.main.MainActivity; import com.mogo.module.main.cards.MogoModulesManager; import com.mogo.service.intent.IMogoIntentListener; +import com.mogo.service.statusmanager.IMogoStatusChangedListener; +import com.mogo.service.statusmanager.StatusDescriptor; import com.mogo.utils.logger.Logger; /** @@ -20,13 +23,15 @@ import com.mogo.utils.logger.Logger; * * @author tongchenfei */ -public class MainLauncherActivity extends MainActivity implements IMogoIntentListener { - +public class MainLauncherActivity extends MainActivity implements IMogoIntentListener, IMogoStatusChangedListener { + private static final String TAG = "MainLauncherActivity"; protected boolean mIsHomeKeyDown = false; @Override protected void onCreate( @Nullable Bundle savedInstanceState ) { super.onCreate( savedInstanceState ); ExtensionsConfig.setNeedRequestUserInfo( true ); + mServiceApis.getStatusManagerApi().registerStatusChangedListener(TAG, + StatusDescriptor.VR_MODE, this); } @Override @@ -89,6 +94,8 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis @Override protected void onDestroy() { super.onDestroy(); + mServiceApis.getStatusManagerApi().unregisterStatusChangedListener(TAG, + StatusDescriptor.VR_MODE, this); try { // acc off 之后会出现进程还在,但是页面被杀的情况,这个直接杀掉进程,然后让整个进程重启 Process.killProcess( Process.myPid() ); @@ -110,4 +117,17 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis sendBroadcast( intent ); Logger.d( TAG, "send msg to AI Voice" ); } + + @Override + public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { + if (isTrue) { + FrameLayout.LayoutParams entranceParams = ( ( FrameLayout.LayoutParams ) mEntrance.getLayoutParams() ); + entranceParams.leftMargin = getResources().getDimensionPixelSize( R.dimen.module_main_entrance_fragment_container_marginLeft_in_vr_mode ); + mEntrance.setLayoutParams( entranceParams ); + }else{ + FrameLayout.LayoutParams entranceParams = ( ( FrameLayout.LayoutParams ) mEntrance.getLayoutParams() ); + entranceParams.leftMargin = getResources().getDimensionPixelSize( R.dimen.module_main_entrance_fragment_container_marginLeft_out_vr_mode ); + mEntrance.setLayoutParams( entranceParams ); + } + } } diff --git a/main-extensions/mogo-module-main-launcher/src/main/res/values/dimens.xml b/main-extensions/mogo-module-main-launcher/src/main/res/values/dimens.xml new file mode 100644 index 0000000000..79e190ca2d --- /dev/null +++ b/main-extensions/mogo-module-main-launcher/src/main/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 204px + 800px + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index 7ec1345d38..0472822c92 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -79,6 +79,7 @@ import java.util.Random; import static com.mogo.module.common.utils.SPConst.getSPGuideRecord; import static com.mogo.module.common.utils.SPConst.getSpGuide; +import static com.mogo.module.extensions.ExtensionsModuleConst.TYPE_ENTRANCE; import static com.mogo.module.share.constant.ShareConstants.KEY_CLICK_SHARE_BUTTON; import static com.mogo.module.share.constant.ShareConstants.KEY_CLICK_SHARE_TIME; import static com.mogo.module.share.constant.ShareConstants.KEY_SERVER_SHOW_DAY_COUNT; @@ -170,6 +171,8 @@ public class EntranceFragment extends MvpFragment{ + // 进入vr模式 + enterVrMode(); + }); + + tvExitVrMode = findViewById(R.id.module_ext_exit_vr_mode); + tvExitVrMode.setOnClickListener((v)->{ + // 退出vr模式 + exitVrMode(); + }); dealWeatherContainer(); @@ -394,6 +408,28 @@ public class EntranceFragment extends MvpFragment