一张图片描述了一千多个单词,所以我用我拙劣的gimp技巧创建了下面的草图。
中间的图标是用户的当前位置,周围的标记是附近的位置。黑色方块表示用户在当前缩放级别下可以在地图上看到的内容,但这仅显示两个位置。
所以我的问题是:
有没有什么内置的方法可以在屏幕的外部区域显示某种指示器,这样用户就可以看到屏幕上可见区域之外的附近区域。如果这些指示器可以显示在给定半径内但不在正方形内显示的标记,那就太好了。
如果没有内置的方法,我应该研究什么来解决这个问题?
最佳答案
您可以使用LatLngBounds.Builder;
和SphericalUtil
来执行此操作。
这是一个例子。
double radius = 1000; // 1km distance.
LatLngBounds.Builder builder = new LatLngBounds.Builder();
double distance = SphericalUtil.computeDistanceBetween(currentPosition, marker.getPosition());
if (distance < radius) {
// include the marker within the 1km distance.
builder.include(marker.getPosition());
}
googleMap.moveCamera(CameraUpdateFactory.newLatLngBounds(builder.build(), 19));
别忘了添加编译
'com.google.maps.android:android地图实用程序:0.5'到您的
build.gradle使用球体