内容简介:我正在使用Maps API v2在Android上编写一个基于地图的应用.我已经将标记放在地图上,并可以显示这些标记的自定义信息窗口,但是AFAICT一次只能显示一个信息窗口.有几个点,我想要不同的行为:我想总是显示多个窗口的信息窗口,没有标记显示.我想我可以编写一些代码来绘制信息窗口到位图支持的画布,并将这些位图作为标记“图标”传递给地图.这种总结我正在努力做的很好:我希望信息窗口成为我的标记.但是这种方法需要我写我自己的窗框绘图代码,我宁愿避免.
我正在使用Maps API v2在Android上编写一个基于地图的应用.
我已经将标记放在地图上,并可以显示这些标记的自定义信息窗口,但是AFAICT一次只能显示一个信息窗口.有几个点,我想要不同的行为:我想总是显示多个窗口的信息窗口,没有标记显示.
我想我可以编写一些代码来绘制信息窗口到位图支持的画布,并将这些位图作为标记“图标”传递给地图.这种总结我正在努力做的很好:我希望信息窗口成为我的标记.但是这种方法需要我写我自己的窗框绘图代码,我宁愿避免.
是否有更好的方式支持一次显示多个信息窗口?
在文档中它指出:
Since there is only one info window shown at any one time, this provider may choose to reuse views, or it may choose to create new views on each method invocation.
所以没有你不能用常规的infoviews做,但它不是太难创建标记作为infoviews.
编辑
我将在xml中创建一个要用作标记/对话框的视图.这样的事情
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="100dp"
android:layout_height="100dp"
android:orientation="vertical"
android:background="@android:color/white"
>
<TextView
android:text="test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageView
android:src="@drawable/ic_launcher"
android:layout_width="50dp"
android:layout_height="50dp"/>
</LinearLayout>
然后我会将此视图转换为位图,并将该位图用作我的标记:
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();
http://stackoverflow.com/questions/15331983/multiple-info-windows-in-android-maps-api-2
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
鸟哥的Linux私房菜
鸟哥 / 机械工业出版社 / 2008-1 / 88.00元
《鸟哥的Linux私房菜:服务器架设篇(第2版)》是对连续三年蝉联畅销书排行榜前10名的《Linux鸟哥私房菜一服务器架设篇》的升级版,新版本根据目前服务器与网络环境做了大幅度修订与改写。 全书共3部分,第1部分为架站前的进修专区,包括在架设服务器前必须具备的网络基础知识、Linux常用网络命令、Linux网络侦错步骤,以及服务器架站流程:第2部分为主机的简易防火措施,包括限制Linux对......一起来看看 《鸟哥的Linux私房菜》 这本书的介绍吧!