Мне нужно переместить маркер из местоположения источника в пункт назначения по маршруту.Переместить маркер вдоль маршрута в mapbox android
Как это сделать в карточке.
Пожалуйста, помогите мне решить эту проблему.
Спасибо.
Мне нужно переместить маркер из местоположения источника в пункт назначения по маршруту.Переместить маркер вдоль маршрута в mapbox android
Как это сделать в карточке.
Пожалуйста, помогите мне решить эту проблему.
Спасибо.
Используйте OnLocation изменения, чтобы получить cuurent местоположение, и убедитесь, что вы получаете его .И затем поместить этот код, чтобы снова сбросить маркер на новое место
googleMap.clear();
mLAt=location.getLatitude();
mLong=location.getLongitude();
onlochangelatlnglatLng=new LatLng(mLAt,mLong);
googleMap.addMarker(new MarkerOptions().position(onlochangelatlnglatLng).icon(BitmapDescriptorFactory.fromResource(R.drawable.loccar)).title("My location"));
Toast.makeText(getApplicationContext(), "Location changed! +LAt"+mLAt+ "mlongggg"+mLong,
Toast.LENGTH_SHORT).show();
Вы можете обновить свои маркеры либо бухгалтерские маркер конфигурации, как так:
List<MarkerViewOptions> optionsList = new ArrayList<>();
optionsList.add(new MarkerViewOptions()
.title("My title")
.snippet("My snippet")
.position(new LatLng(0, 0))
.icon(someIcon));
Затем вы можете выбрать, чтобы обновить информацию из optionsList
с помощью добытчиков и сеттеров. Мне лично, мне нравится получать маркер из переменной MapboxMap
внутри метода onMapReady
внутри интерфейса OnMapReadyCallback
. Вы можете сделать это следующим образом:
mapboxMap.getMarkers().get(indexOfMarkerYouWantToChange)
.setPosition(new LatLng(newLat, newLng));
Как вы получаете значение для indexOfMarkerYouWantToChange? – ssimm
@ssimm в зависимости от того, в каком порядке были добавлены маркеры (я предполагаю, что существует более одного маркера), я просто кодирую индекс маркера со значением от 0 до полных маркеров - 1. Например, если у вас есть 3 маркера, где первая была начальной точкой, вторая текущая позиция и третья точка назначения, и вы хотели обновить текущее местоположение, сделайте 'mapboxMap.getMarkers(). Get (1)' – jlvmoster
Спасибо за ваш ответ. Но это не связано с googleMap. Но мой код связан с mapbox. –