Я добавляю маркер карты Google с маркером 1000 в маленьком окошке, пока я перемещаю карту по кругу, зависание приложения, не знаю почему,
Также я пробовал кластер маркеров. но клиент отказался от него, ему нужно, чтобы все маркеры были показаны на карте, так как маркер необходим для показа пользователю ...!
есть ли способ сделать это с лучшей подготовкой
я полагаю, что могу увеличить масштаб до пользовательской точки и показать маркер только с картой границы, а пока пользователь перемещает карту, он удаляет маркер вокруг и устанавливает новый маркер
но это будет происходить в цикле в массиве с 1000 элементов в нем, и это не лучшее решение, любой знает, как это сделать !!!?
for (int i = 0; i < stopDetailsModelResponses.size(); i++) {
mapHelper.setMarkerPinWithLayoutToImage(
stopDetailsModelResponses.get(i).getStopDetailsLat(),
stopDetailsModelResponses.get(i).getStopDetailsLong(),
stopDetailsModelResponses.get(i).getStopDetailsName(),
String.valueOf(stopDetailsModelResponses.get(i).getStopDetailsId()),
stopDetailsModelResponses.get(i).getStopDetailsLogoUrl(),
stopDetailsModelResponses.get(i).getStopDetailsType(),
markerOptions, googleMap, getContext()
);
}
googleMap.setOnMarkerClickListener(onMarkerClickListener);
это для зацикливания внутри списка для установки элемента на маркер карты
и это для добавления маркера на карту
try {
markerOptions = new MarkerOptions()
.position(new LatLng(lat, longitude))
.title(locationName)
.draggable(false);
markerOptions.icon(BitmapDescriptorFactory.fromBitmap(defineLayoutOfPin(context, imageType, locationId)));
googleMap.addMarker(markerOptions);
} catch (Exception e) {
Log.e("setMarkerWithImage: ", e.getMessage());
}