This commit is contained in:
wangcongtao
2020-05-26 19:43:49 +08:00
parent 3d1f805eee
commit f35e1eb301
19 changed files with 71 additions and 278 deletions

View File

@@ -39,6 +39,7 @@ import com.mogo.module.common.map.MapCenterPointStrategy;
import com.mogo.module.common.map.Scene;
import com.mogo.module.extensions.ExtensionsModuleConst;
import com.mogo.module.extensions.R;
import com.mogo.module.extensions.navi.NaviInfoView;
import com.mogo.module.extensions.utils.TopViewAnimHelper;
import com.mogo.module.share.ShareControl;
import com.mogo.service.IMogoServiceApis;
@@ -85,7 +86,7 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
private View mMove2CurrentLocation;
// private NaviInfoView mNaviInfo;
private NaviInfoView mNaviInfo;
private TextView mExitNavi;
@@ -264,6 +265,7 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
if(rootView!=null) {
TopViewAnimHelper.getInstance().init(rootView);
}
TopViewAnimHelper.getInstance().setIMogoMapUIController( mMApUIController );
mExitNavi = findViewById( R.id.module_entrance_id_exit_navi );
mExitNavi.setOnClickListener( view -> {
@@ -324,6 +326,9 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_right_margin ),
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_bottom_margin )
);
mNaviInfo = new NaviInfoView();
mNaviInfo.inflate( rootView );
}
private static final String AUTONAVI_STANDARD_BROADCAST_RECV = "AUTONAVI_STANDARD_BROADCAST_RECV";
@@ -394,27 +399,29 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
if ( naviinfo == null ) {
return;
}
// mNaviInfo.notifyChanged( naviinfo );
mNaviInfo.notifyChanged( naviinfo );
}
@Override
public void onStartNavi() {
// mNaviInfo.setVisibility( View.VISIBLE );
TopViewAnimHelper.getInstance().showNaviView();
mExitNavi.setVisibility( View.VISIBLE );
mMApUIController.changeMapMode( mCameraMode.isSelected() ? EnumMapUI.NorthUP_2D : EnumMapUI.CarUp_2D );
MapCenterPointStrategy.setMapCenterPointBySceneAndDelay( mMApUIController, Scene.NAVI, 500, () -> {
return !mMogoNavi.isNaviing();
} );
mDisplayOverview.setVisibility( View.VISIBLE );
mCameraMode.setVisibility( View.VISIBLE );
mApis.getAnalyticsApi().track( "Navigation_begin", new HashMap<>() );
}
@Override
public void onStopNavi() {
// mNaviInfo.setVisibility( View.GONE );
TopViewAnimHelper.getInstance().hideNaviView();
mExitNavi.setVisibility( View.GONE );
mMApUIController.changeMapMode( EnumMapUI.NorthUP_2D );
mDisplayOverview.setVisibility( View.GONE );
mCameraMode.setVisibility( View.GONE );
MapCenterPointStrategy.setMapCenterPointByScene( mMApUIController, Scene.AIMLESS );
}
@@ -471,7 +478,7 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
return;
}
if ( isTrue ) {
mDisplayOverviewText.setText( "退出全览" );
mDisplayOverviewText.setText( "退出\n全览" );
mCameraMode.setVisibility( View.GONE );
} else {
mDisplayOverviewText.setText( "全览" );

View File

@@ -1,13 +1,8 @@
package com.mogo.module.extensions.navi;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.Nullable;
import com.mogo.map.impl.amap.utils.IconTypeUtils;
import com.mogo.map.navi.MogoNaviInfo;
@@ -20,19 +15,7 @@ import java.util.Calendar;
* <p>
* 描述
*/
public abstract class BaseNaviInfoView extends RelativeLayout {
public BaseNaviInfoView( Context context ) {
this( context, null );
}
public BaseNaviInfoView( Context context, @Nullable AttributeSet attrs ) {
this( context, attrs, 0 );
}
public BaseNaviInfoView( Context context, @Nullable AttributeSet attrs, int defStyleAttr ) {
super( context, attrs, defStyleAttr );
}
public abstract class BaseNaviInfoView {
public void notifyChanged( MogoNaviInfo naviInfo ) {

View File

@@ -1,13 +1,9 @@
package com.mogo.module.extensions.navi;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.Nullable;
import com.mogo.map.navi.MogoNaviInfo;
import com.mogo.module.extensions.R;
@@ -30,27 +26,17 @@ public class NaviInfoView extends BaseNaviInfoView {
private TextView remainingTimeUnit;
private TextView arriveTime;
public NaviInfoView( Context context ) {
this( context, null );
}
public void inflate(View view){
turnIcon = view.findViewById( R.id.module_map_id_navi_next_info_road_turn_icon );
distance = view.findViewById( R.id.module_map_id_navi_next_info_distance );
distanceUnit = view.findViewById( R.id.module_map_id_navi_next_info_distance_unit );
nextRoad = view.findViewById( R.id.module_map_id_navi_next_info_road );
public NaviInfoView( Context context, @Nullable AttributeSet attrs ) {
this( context, attrs, 0 );
}
public NaviInfoView( Context context, @Nullable AttributeSet attrs, int defStyleAttr ) {
super( context, attrs, defStyleAttr );
View.inflate( context, R.layout.module_map_layout_navi_info_panel, this );
turnIcon = findViewById( R.id.module_map_id_navi_next_info_road_turn_icon );
distance = findViewById( R.id.module_map_id_navi_next_info_distance );
distanceUnit = findViewById( R.id.module_map_id_navi_next_info_distance_unit );
nextRoad = findViewById( R.id.module_map_id_navi_next_info_road );
remainingDistance = findViewById( R.id.module_map_id_remaining_distance );
remainingDistanceUnit = findViewById( R.id.module_map_id_remaining_distance_unit );
remainingTime = findViewById( R.id.module_map_id_remaining_time );
remainingTimeUnit = findViewById( R.id.module_map_id_remaining_time_unit );
arriveTime = findViewById( R.id.module_map_id_arrive_time );
remainingDistance = view.findViewById( R.id.module_map_id_remaining_distance );
remainingDistanceUnit = view.findViewById( R.id.module_map_id_remaining_distance_unit );
remainingTime = view.findViewById( R.id.module_map_id_remaining_time );
remainingTimeUnit = view.findViewById( R.id.module_map_id_remaining_time_unit );
arriveTime = view.findViewById( R.id.module_map_id_arrive_time );
}
@Override