如何将填充应用于GoogleMap以显示所有标记

时间:2018-02-13 19:22:16

标签: android google-maps

我正在Android应用上实现功能,该功能将从Firebase数据库中读取用户位置,然后在地图上为每个用户添加标记。

这是负责工作的功能。该方法还会添加正在从数据库中的用户读取位置的用户的位置。

public void updateMap(Location location) {
        LatLng userLocation = new LatLng(location.getLatitude(), location.getLongitude());

        mMap.clear();
        saveLocationInDatabase(location);

        final ArrayList<Marker> markers = new ArrayList<>();
        markers.add(mMap.addMarker(new MarkerOptions().position(userLocation).title("Your Location")));

        dbRef = FirebaseDatabase.getInstance().getReference().child("users");
        dbRef.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                for (DataSnapshot dsp : dataSnapshot.getChildren()) {
                    User user = dsp.getValue(User.class);
                    LatLng userLocation = new LatLng(Double.parseDouble(user.getLatitude()), Double.parseDouble(user.getLongitude()));
                    markers.add(mMap.addMarker(new MarkerOptions().position(userLocation).title(user.fullName + " location")));
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
                Log.i("Info", "" + databaseError.getMessage());
            }
        });

        LatLngBounds.Builder builder = new LatLngBounds.Builder();
        for (Marker marker : markers) {
            builder.include(marker.getPosition());
        }
         final int padding = 120; // offset from edges of the map in pixels
        LatLngBounds bounds = builder.build();
        CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, padding);
        mMap.moveCamera(cameraUpdate);
        mMap.animateCamera(cameraUpdate);


    }

有什么问题?

  • 我在地图上添加了填充,因为我希望所有标记都显示在地图上。

我尝试过什么?

  • 我尝试添加mMap.setPadding(30,30,30,30);,但这也不行。

那么我怎么能做到这一点。要求是要在地图上显示的所有标记。

提前致谢。

修改

  • 因为我认为如果我提供图片会更清楚,更多的人会给我一些时间。

  • 这就是我想要实现的目标。 I zoomed out here manually

  • 这就是我现在所拥有的。

0 个答案:

没有答案