我正在尝试使用该setMyLocationEnabled()
方法在地图中获取我的位置。这个方法没有问题,我也用过setMyLocationButtonEnabled()
,一切都很好。
但是当我点击地图上的按钮时,我没有看到指示我所在位置的“蓝点”。
你能告诉我可能是什么问题吗?
我正在尝试使用该setMyLocationEnabled()
方法在地图中获取我的位置。这个方法没有问题,我也用过setMyLocationButtonEnabled()
,一切都很好。
但是当我点击地图上的按钮时,我没有看到指示我所在位置的“蓝点”。
你能告诉我可能是什么问题吗?
setMyLocationEnable 不能单独工作。您必须将 requestLocationUpdates 放在 onResume 中。
@Override
public void onResume() {
super.onResume();
if (isGPSEnabled) {
locMgr.requestLocationUpdates(LocationManager.GPS_PROVIDER, time, distance, this);
}
if (isNetworkEnabled) {
locMgr.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, time, distance, this);
}
map.setLocationSource(this);
}
首先,你应该声明一个匿名的内部类,它实现Google.OnMyLocationChangeListener
,或者你可以在你的主类中实现它。假设您的地图实例被称为map
. 您将必须设置监听器,如下所示map.setOnMyLocationChangeListener(this)
:然后,您将不得不执行以下操作:
@Override
public void onMyLocationChange(Location location) //inherited from the interface you implemented
{
//do your thing, the variable "location" holds everything you need
}