Android Maps API 2中的多个信息窗口

我正在使用Maps API v2在Android上编写基于地图的应用。

我已经在地图上放置了标记,并且可以显示这些标记的自定义信息窗口,但AFAICT一次只能显示一个信息窗口。 有几个我想要不同行为的地方:我想总是显示多个窗口的信息窗口,而不显示标记。

我想我可以编写一些代码来将信息窗口绘制到位图支持的canvas,并将这些位图作为标记“图标”传递给地图。 这种总结了我正在努力做的事情:我希望信息窗口成为我的标记。 但是这种方法需要我编写自己的窗框绘图代码,我宁愿避免。

是否有更好的方法支持同时显示多个信息窗口?

在文档中它指出:

由于任何时候只显示一个信息窗口,因此该提供程序可以选择重用视图,也可以选择在每个方法调用上创建新视图。

所以,你不能用常规的信息视图来做到这一点,但创建充当信息视图的标记并不太难。

编辑

我将在xml中创建一个您想用作标记/对话框的视图。 像这样的东西:

     

然后我将此视图转换为位图并使用该位图作为我的标记:

  ImageView image = (ImageView) findViewById(R.id.main_image); LinearLayout tv = (LinearLayout) this.getLayoutInflater().inflate(R.layout.test_layout, null, false); tv.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); tv.layout(0, 0, tv.getMeasuredWidth(), tv.getMeasuredHeight()); tv.setDrawingCacheEnabled(true); tv.buildDrawingCache(); Bitmap bm = tv.getDrawingCache();