我想创建一个方法来查看相机的中心是否在一个区域的范围内,如果是,那就做点什么。
当我尝试这个时,我收到错误:Operator ! cannot be applied to LatLngBounds
。
我也试过了if(temp != new LatLngBounds(bounds1, bounds2))
,但也遇到了同样的错误。
这是我的方法
public GoogleMap.OnCameraChangeListener getCameraChangeListener()
{
return new GoogleMap.OnCameraChangeListener()
{
@Override
public void onCameraChange(CameraPosition cameraPosition)
{
LatLng temp = new LatLng(cameraPosition.target.latitude, cameraPosition.target.longitude);
//Northwest corner of bounds
LatLng bounds1 = new LatLng(-41.467668522, 173.03190229);
//Southwest corner of bounds
LatLng bounds2 = new LatLng(-40.095127348, 177.97574994);
LatLngBounds outside = new LatLngBounds(bounds1, bounds2);
//If the camera is within the bounds
if(temp != outside)
{
//do something
}
}
};
}
答案 0 :(得分:1)
我认为你的意思是东北不是西北?否则它只是一条线。
LatLngBounds有Contains方法允许
if (outside.contains(temp){
//do something
}
然而,外部是该变量的一个误导性名称。