调整m1布局结构

This commit is contained in:
tongchenfei
2020-11-12 20:28:38 +08:00
parent d6e8e13338
commit 1778f80443
6 changed files with 241 additions and 105 deletions

View File

@@ -4,6 +4,7 @@ import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Rect;
import android.os.Bundle;
import android.os.Debug;
import android.os.Handler;
import android.text.TextUtils;
import android.util.TypedValue;
@@ -397,6 +398,14 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
debugTopView();
if (!DebugConfig.isMapBased()) {
// 不基于地图的版本需要隐藏一些按钮
mMove2CurrentLocation.setVisibility(View.GONE);
mWeatherContainer.setVisibility(View.GONE);
mMsgContainer.setVisibility(View.GONE);
mUserHeadImg.setVisibility(View.GONE);
}
isShowGuide = SharedPrefsMgr.getInstance(AbsMogoApplication.getApp()).getBoolean(getSpGuide(), false);
Logger.d(TAG, " isShowGuide = " + isShowGuide + " --isGreaterThanOneDay = " + isGreaterThanOneDay());
if (isShowGuide && isGreaterThanOneDay()) {
@@ -662,6 +671,9 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
@Override
public void onStartNavi() {
if (!DebugConfig.isMapBased()) {
return;
}
TopViewAnimHelper.getInstance().showNaviView();
mMApUIController.changeMapMode(mCameraMode.isSelected() ? EnumMapUI.NorthUP_2D :
EnumMapUI.CarUp_2D);
@@ -688,6 +700,9 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
@Override
public void onStopNavi() {
if (!DebugConfig.isMapBased()) {
return;
}
TopViewAnimHelper.getInstance().hideNaviView();
mExitNavi.setVisibility(View.GONE);
mMApUIController.changeMapMode(EnumMapUI.NorthUP_2D);
@@ -768,6 +783,9 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
@Override
public void renderWeatherInfo(String temp, String desc, int iconId) {
if (!DebugConfig.isMapBased()) {
return;
}
boolean hidden = false;
if (iconId != 0) {
mWeatherIcon.setImageResource(iconId);
@@ -784,6 +802,9 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
@Override
public void renderMsgInfo(boolean hasMsg, int amount) {
if (!DebugConfig.isMapBased()) {
return;
}
mMsgContainer.setVisibility(hasMsg ? View.VISIBLE : View.GONE);
mMsgCounter.setText(amount > MAX_DISPLAY_MSG_AMOUNT ?
getString(R.string.module_ext_str_dots) : String.valueOf(amount));
@@ -791,6 +812,9 @@ public class EntranceFragment extends MvpFragment<EntranceView, EntrancePresente
@Override
public void renderUserInfo(UserInfo userInfo) {
if (!DebugConfig.isMapBased()) {
return;
}
if (userInfo != null) {
Logger.d(TAG, "renderUserInfo: " + userInfo);
RequestOptions options =

View File

@@ -17,6 +17,7 @@ import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.ConstraintSet;
import androidx.constraintlayout.widget.Group;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.map.uicontroller.IMogoMapUIController;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.map.MapCenterPointStrategy;
@@ -55,6 +56,8 @@ public class TopViewAnimHelper {
private Transition transition;
private TextView cameraMode;
private View shader;
private float topHeight = 0f;
private Handler handler = new Handler();
@@ -99,6 +102,8 @@ public class TopViewAnimHelper {
tvNextDistanceUnit = rootView.findViewById(R.id.module_map_id_navi_next_info_distance_unit);
tvTurnInfo = rootView.findViewById(R.id.module_map_id_navi_next_info_turn_info);
shader = rootView.findViewById(R.id.module_ext_id_top_container_shader);
topContainer.setSlideListener(this::startLatestTopOutAnim);
ivTurnIcon = rootView.findViewById(R.id.module_map_id_navi_next_info_road_turn_icon);
@@ -385,6 +390,9 @@ public class TopViewAnimHelper {
TransitionManager.beginDelayedTransition(topMotionLayout, transition);
// }
checkCameraModePosition(false);
if (DebugConfig.isMapBased()) {
shader.setVisibility(View.VISIBLE);
}
if (naviBg.getVisibility() == View.VISIBLE) {
// 约束设置需要在applyTo()方法之前执行visiable设置需要在applyTo()
// 方法之后执行才能生效,所以分开了两个判断,至于为什么这么做才能生效,不得而知
@@ -483,6 +491,10 @@ public class TopViewAnimHelper {
TransitionManager.beginDelayedTransition(topMotionLayout, transition);
checkCameraModePosition(false);
if (DebugConfig.isMapBased()) {
shader.setVisibility(View.GONE);
}
if (naviBg.getVisibility() == View.VISIBLE) {
// 约束设置需要在applyTo()方法之前执行visiable设置需要在applyTo()
// 方法之后执行才能生效,所以分开了两个判断,至于为什么这么做才能生效,不得而知

View File

@@ -15,6 +15,7 @@ import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.ConstraintSet;
import androidx.constraintlayout.widget.Group;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.map.uicontroller.IMogoMapUIController;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.map.MapCenterPointStrategy;
@@ -53,6 +54,8 @@ public class TopViewNoLinkageAnimHelper {
private Transition transition;
private TextView cameraMode;
private View shader;
private float topHeight = 0f;
private Handler handler = new Handler();
@@ -97,6 +100,8 @@ public class TopViewNoLinkageAnimHelper {
tvNextDistanceUnit = rootView.findViewById(R.id.module_map_id_navi_next_info_distance_unit);
tvTurnInfo = rootView.findViewById(R.id.module_map_id_navi_next_info_turn_info);
shader = rootView.findViewById(R.id.module_ext_id_top_container_shader);
topContainerNoLinkage.setSlideListener(this::startLatestTopOutAnim);
ivTurnIcon = rootView.findViewById(R.id.module_map_id_navi_next_info_road_turn_icon);
@@ -370,7 +375,9 @@ public class TopViewNoLinkageAnimHelper {
R.id.module_entrance_id_top_motion_layout, ConstraintSet.TOP);
TransitionManager.beginDelayedTransition(topMotionLayout, transition);
checkCameraModePosition(false);
if (DebugConfig.isMapBased()) {
shader.setVisibility(View.VISIBLE);
}
constraintSet.applyTo(topMotionLayout);
int scene = Scene.AIMLESS_WITH_ROAD_EVENT;