【问题标题】:LocationSource for Google Map android谷歌地图安卓的LocationSource
【发布时间】:2013-06-06 00:14:19
【问题描述】:

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

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

我已将我的地图设置为启用 myLocation,以便我可以看到说明我所在位置的蓝点。
太棒了。。

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

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

【问题讨论】:

    标签: android android-maps-v2


    【解决方案1】:

    LocationSource 不是一个类,而是一个具有两个函数的接口。

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

    activate 中传递给您的是LocationSource.OnLocationChangedListener listener,您需要为其保留引用。

    在此函数中,您通常还会开始从LocationManager 请求位置。当您在LocationListener 中从LocationManager 获得Location 时,您需要将其转发给LocationSource.OnLocationChangedListener listener

    deactivate 中,您只需停止请求位置即可。

    例如查看:

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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 2014-02-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多