android - 如何手动刷新谷歌地图?

标签 android google-maps

我有一个标记 - 创建 Activity ,当用户可以自定义位置时。此 Activity 结束后,我想将新的和较早保存的标记放在我的谷歌地图上。 (所以更新 map )

我正在使用这个功能:

onMapReady(GoogleMap googleMap)

但它不能正常工作。我必须关闭并重新打开应用程序才能看到更改。

最佳答案

如果您在您的 Activity/fragment 中覆盖 onResume,您可以在标记创建 Activity 关闭后继续工作。在那里,如果您将 GoogleMap 对象设置为全局对象,则可以像在 onMapReady 中那样更新您的 map 。例如:

GoogleMap mGoogleMap;

...

...onMapReady(GoogleMap googleMap){

    mGoogleMap = googleMap;

    ...

}

@Override
public void onResume(){
    super.onResume();

    if(mGoogleMap != null){ //prevent crashing if the map doesn't exist yet (eg. on starting activity)
        mGoogleMap.clear();

        // add markers from database to the map
    }
}

您可以考虑将您的标记添加到在 onResumeonMapReady 中调用的函数中,以使您的代码更易于维护。

关于android - 如何手动刷新谷歌地图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43100365/

相关文章:

javascript - 使用具有不同投影的 ol3-google-maps

javascript - 如何允许内容安全策略从 google api 运行外部 javascript?

android - 如何在 MapView 上创建动态编号的 Pin 指针?

android - 如何在Build-Tools 3.6.0中使用 “R.id object = new R.id();”?

android - 可绘制 => 灰度

android - 使用线程时在android中获取强制关闭错误

android - 围绕用户旋转的 Google Maps Android V2 填充

Android YouTube 播放器直播

android - 如何使用数据类中的 Glide 绑定(bind) RecyclerView 图像

google-maps - 使用 'idle' 监听器更新 Maps V3。打开 InfowWindow 会触发此操作并隐藏标记