多个标记位于同一位置?

时间:2018-02-02 11:44:53

标签: android google-maps firebase google-maps-markers location-services

我正在开发一个应用程序,它通过FirebaseGeoQuery获取位置,并在GeoQuery提取的每个位置显示标记。但问题是如果位置的纬度和经度相同,则标记彼此重叠并且仅显示一个标记。但是我希望显示具有相同位置的多个标记。

我从firebase获取位置并将标记显示为:

GeoQuery geoQuery = geoFire.queryAtLocation(new GeoLocation(mLastLocation.getLatitude(),
                    mLastLocation.getLongitude()), 3);
            geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() {

                @Override
                public void onKeyEntered(String key, GeoLocation location) {
                    MarkerOptions markerOptions = new MarkerOptions();

                    LatLng latLng = new LatLng(location.latitude,location.longitude);
                    markerOptions.position(latLng);

                    try {
                        markerOptions.icon(bitmapDescriptorFromVector(getContext(), R.drawable.ic_marker));
                    } catch (Exception ex){}
                    mGoogleMap.addMarker(markerOptions);
                }

                @Override
                public void onKeyExited(String key) {}

                @Override
                public void onKeyMoved(String key, GeoLocation location) {}

                @Override
                public void onGeoQueryReady() {}

                @Override
                public void onGeoQueryError(DatabaseError error) {}
            });
            LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this);
} 

0 个答案:

没有答案