Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在两个活动之间共享GoogleMaps对象_Android_Gis_Android Maps V2 - Fatal编程技术网

Android 在两个活动之间共享GoogleMaps对象

Android 在两个活动之间共享GoogleMaps对象,android,gis,android-maps-v2,Android,Gis,Android Maps V2,我有A和B两种活动 A使用谷歌地图添加标记,B使用谷歌地图添加线条 但是A和B打开了他们自己的地图 如何在两项活动中使用相同的地图?我不想为每次加载一次又一次地传递标记和线条数据。您可以使用EventBus在Android中传递任何复杂的对象 将映射从一个活动传递到另一个活动的示例: 在EventBus上添加您的Google地图: EventBus.getDefault().postSticky(googleMap); startActivity(new Intent(getActivity()

我有A和B两种活动

A使用谷歌地图添加标记,B使用谷歌地图添加线条

但是A和B打开了他们自己的地图

如何在两项活动中使用相同的地图?我不想为每次加载一次又一次地传递标记和线条数据。

您可以使用EventBus在Android中传递任何复杂的对象

将映射从一个活动传递到另一个活动的示例:

在EventBus上添加您的Google地图:

EventBus.getDefault().postSticky(googleMap);
startActivity(new Intent(getActivity(), SomeActivity.class));
在某个活动中的任何地方:

GoogleMap googleMap = EventBus.getDefault().getStickyEvent(GoogleMap.class);

这个示例只是为了说明它可以跨活动工作,您可以调用
getStickyEvent
来获取代码中任何位置的地图。

您使用的是片段吗?你试过使用MapFragment吗?我不确定,但它可能适用于不同的活动。我使用它作为我使用的每个活动的ui xml映射:但类中没有片段对象。Just GoogleMap object.FATAL EXCEPTION:main java.lang.NoClassDefFoundError:de.greenrobot.event.EventBus需要将jar添加到项目的
libs
文件夹中,可以在此处找到jar:错误已解决,但粘性映射没有标记或其他属性。它显示了世界地图。我认为Eventbus在这方面不起作用。嗯,您需要以某种方式将映射应用到MapFragment,否则映射将只显示一个新的默认映射。你能给我看一下相关的代码吗?我的代码太乱了,你能给我举个小例子吗?