1

我有一个用于位置更新的位置管理器类。

我的活动中还有一个小的地图片段,我想集中在我的经理吐出的位置上。

我将我的地图设置为启用 myLocation,以便我可以看到说明我所在位置的蓝点。
伟大的..

现在我也在更新相机的地图,以更新我从我的 locationManager 获得的纬度和经度,但地图没有以蓝点为中心。这让我觉得地图和我的位置经理对我在哪里有不同的想法。

我查看了 mMap.setLocationSource ,希望我可以告诉我的地图使用我的位置管理器作为源,但是我在文档中得到的关于 LocationSource 类的内容很少。有人可以向我说明如何让我的地图使用我的位置管理器作为它的来源吗?>

4

2 回答 2

2

LocationSource不是一个类,而是一个具有两个功能的接口。

您需要创建一个实现它的类,并且:

activate你被传递LocationSource.OnLocationChangedListener listener了,你需要保留一个参考。

在此功能中,您通常还会开始从 请求位置LocationManager。当你从你的 中得到一个LocationfromLocationManagerLocationListener,你需要把它转发到LocationSource.OnLocationChangedListener listener.

deactivate您只需停止请求位置。

例如查看:

ANDROID_SDK\extras\google\google_play_services\samples\maps\src\com\example\mapdemo\LocationSourceDemoActivity.java

于 2013-06-05T16:08:40.100 回答
0

在您的地图片段中,只需实现OnMyLocationChangeListener然后map.setOnMyLocationChangeListener(this)为 mapfragment 设置,然后随时onMyLocationChange调用将相机更新到给定的位置,因为当它被调用时,蓝点会移动。

您的位置管理器和地图位置是两个不同的东西

于 2013-06-05T16:01:19.547 回答