我想在Android Studio中使用Google Maps Activity仅显示特定区域,它会告诉用户是否超出范围/范围。
Specific Area 的示例, 地图链接来自How to highlight an area on Google Maps Without Javascript?
我该怎么做?
答案 0 :(得分:1)
你想要达到的目标被称为"锁定范围"。 在Android中,这不能自动或直接完成,但你必须做一些"技巧"。
您有两种选择: 锁定整个范围(一个区域必须完全在可见范围内) 按地图中心锁定(地图的中心必须在特定范围内)。
为了做到这一点,你必须使用" onCameraChangeListener" googleMap对象: https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnCameraChangeListener
public void checkBounds() {
// allowedbounds must be generated only once, in onCreate, because it will be a fixed area
LatLng actualCenter = map.getProjection().getVisibleRegion().getCenter();
if (allowedBounds.contains(actualCenter)){
return;
}else{
其中检查边界是检查某个区域或其中的一部分:
H: user2986 pass2986
H: user3258 pass3258 # { startdate=2015-05-15 | enddate=2015-11-17 | info=girlfriend data | dealer=x-admin }
FILE CHANNELINFO: "/other/config.cfg"
//如果不遵守边界,请返回允许的边界 map.animateCamera(CameraUpdateFactory.newLatLngBounds(allowedBounds)); } }
如果要检查是否遵守完全绑定,则必须编写自己的方法进行检查并更改if条件。 可以在此处找到该方法的提示: https://github.com/googlemaps/android-maps-utils/blob/master/library/src/com/google/maps/android/geometry/Bounds.java