我有一个标记 - 创建活动,当用户可以自定义位置时。关闭此活动后,我想将新的和更早保存的标记放在我的谷歌地图上。 (所以更新地图)
我正在使用此功能:
onMapReady(GoogleMap googleMap)
但它无法正常工作。我必须关闭并重新打开应用程序以查看更改。
答案 0 :(得分:4)
如果您覆盖活动/片段中的onResume
,则可以在标记创建活动关闭后继续工作。在那里,如果将onMapReady
对象设置为全局,则可以像在GoogleMap
中一样更新地图。例如:
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
}
}
您可以考虑将标记添加到onResume
和onMapReady
中调用的函数中,以使代码更易于维护。