Когда вызывается функция кластера didTap, она приближает камеру к одному из маркеров, присутствующих внутри кластера, но я хочу показать все маркеры, которые были в этом кластере, и сфокусировать камеру на этих маркерах.
Я смог добиться этого в Android. Однако в iOS утилиты Google SDK не предоставляют способ получить все элементы, присутствующие в объекте кластера.
Вот код Android
mClusterManager
.setOnClusterClickListener(new
ClusterManager.OnClusterClickListener<Service_Provider>() {
@Override
public boolean onClusterClick(final Cluster<Service_Provider> cluster) {
LatLngBounds.Builder builder = LatLngBounds.builder();
for (ClusterItem item : cluster.getItems()) {
builder.include(item.getPosition());
Log.w(TAG, "Clicked Cluster Item name: " + item.getTitle());
}
final LatLngBounds bounds = builder.build();
map.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 100));
return true;
}
});
Что я пробовал в iOS, такдалеко
func clusterManager(_ clusterManager: GMUClusterManager, didTap cluster:
GMUCluster) -> Bool {
print("Did tap cluster")
let newCamera = GMSCameraPosition.camera(withTarget: cluster.position,
zoom: mapView.camera.zoom +1)
let update = GMSCameraUpdate.setCamera(newCamera)
mapView.moveCamera(update)
}
Любая помощь приветствуется.
TIA