自定义交通路线 最后更新时间: 2026年06月06日
通过AMapNaviViewOptions可以进行路线相关元素的显示隐藏控制,包括自车、罗盘、交通信号灯、路线显隐、路线Marker图标的显隐控制;结合其中的RouteOverlayOption,可以控制路线相关属性的自定义,包括路线宽度、不同路况路线颜色、虚线颜色、置灰效果和颜色 。
路线显隐

可以通过以下接口控制路线显隐,默认显示,隐藏路线时,摄像头、红绿灯、转向箭头、牵引线、起终点等也会一起隐藏。
/**
* 设置是否自动显示交通路线,默认显示
*
* @param autoDrawRoute true, 自动显示;false,隐藏
* @since 2.2.3
*/
public setAutoDrawRoute(autoDrawRoute: boolean): void自车、罗盘显隐

可以通过以下接口控制自车、罗盘显隐,默认显示,设置为隐藏时,牵引线也会被隐藏。
/**
* 设置是否隐藏AMapNaviView上的CarOverlay,包括自车、罗盘
* @param isVisible true 显示 false 不显示 默认为显示,设置为false时,牵引线也会隐藏
* @since 2.2.3
*/
public setCarOverlayVisible(isVisible: boolean)起终途点\步行轮渡扎点\禁行限行封路icon显隐
路线上的点位标记,包括起点、终点途经点、步行轮渡扎点、禁行限行封路图标。

可以通过以下接口控制其显示和隐藏。
/**
* 是否显示 起终途点\步行轮渡扎点\禁行限行封路icon
* @param showStartEndVia 是否显示起终途点
* @param showFootFerry 是否显示步行轮渡扎点
* @param showForbidden 是否显示禁行限行图标
* @since 2.2.3
*/
public setRouteMarkerVisible(showStartEndVia: boolean, showFootFerry: boolean, showForbidden: boolean)路线宽度
交通路线的宽度包含实线的宽度和虚线的宽度,虚线一般出现在需要步行和轮渡的地方,如下图所示:

修改路线宽度可以调用如下接口,设置为0时,可恢复默认宽度:
/**
* 设置导航线路的宽度
*
* @param lineWidth 单位:像素
*/
public setLineWidth(lineWidth: number): void路线颜色
路线的颜色包括不同路况(未知/畅通/缓慢/拥堵/严重拥堵)的路线颜色、虚线颜色、路过置灰的颜色

可以通过以下接口自定义不同路况下的路线颜色,虚线颜色以及路过置灰的颜色(走过的路颜色):
/**
* 设置自定义的虚线颜色
* @param color
* @since 2.2.3
*/
public setDashedLineColor(color: CoreRouteDashedLineColor | undefined): void
/**
* 设置不同路况下的路线颜色
*
* @param routeStatusColor
* @since 2.2.3
*/
public setRouteStatusColor(routeStatusColor: ArrayList<CoreRouteTrafficStatusColor>| null): void
/**
* 设置自定义的走过路线的颜色
*
* @param routeGreyColor
* @since 2.2.3
*/
public setRouteGreyColor(routeGreyColor: CoreRoutePassLineColor | undefined): void路过置灰

路过置灰即将走过路线置成灰色效果,您只需调用如下接口进行效果的开关:
/**
* 通过路线是否自动置灰
* 可以使用{@link RouteOverlayOptions#setRouteGreyColor}改变颜色
*
* @param afterRouteAutoGray
* @since 2.2.3
*/
public setAfterRouteAutoGray(afterRouteAutoGray: boolean): void在开启路过置灰功能时,还可以自定义其颜色
/**
* 设置自定义的走过路线的颜色
* @param routeGreyColor
* @since 2.2.3
* @exclude
*/
public setRouteGreyColor(routeGreyColor: CoreRoutePassLineColor | undefined): void
