那途径点的个数为2,比如说我添加了第一个途径点是西二旗,添加第二个途径点是北京动物园,那么我地图上显示的途经点分别是1和3,我想要地图上显示途经点1和2,这个怎么写?
时间: 2024-02-21 09:59:15 浏览: 136
如果您想要保证每次导航中添加的途经点编号是连续的,可以在每次导航前将之前添加的途经点清空,然后重新添加所有途经点。可以使用 `BaiduNaviManagerFactory.getRouteGuideManager().clearViaNodes()` 方法来清空之前添加的途径点,然后重新添加所有途径点即可。具体代码如下:
```java
private final List<BNRoutePlanNode> list = new ArrayList<>();
@Override
protected void addWaypoint(PoiInfo poiInfo) {
BNRoutePlanNode build = new BNRoutePlanNode.Builder()
.latitude(poiInfo.getLocation().latitude)
.longitude(poiInfo.getLocation().longitude)
.name(poiInfo.name)
.description(poiInfo.name)
.build();
if (!list.contains(build)) {
list.add(build);
BaiduNaviManagerFactory.getRouteGuideManager().clearViaNodes();
BaiduNaviManagerFactory.getRouteGuideManager().addViaNodes(list);
android.util.Log.d("TAGAA", "addWaypoint: 数据 "+list.toString()+"\n"+list.size());
}
//设置最大途径点的个数(支持4~18个)
BaiduNaviManagerFactory.getCommonSettingManager().setViaPointCount(4);
}
```
这样在每次导航前都会清空之前添加的途径点,并重新添加所有途径点,保证途径点编号是连续的,从而可以实现地图上显示途经点 1 和 2。
阅读全文