Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.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
Java Android:是否可以在地图视图的顶部绘制一个视图作为覆盖_Java_Android_Google Maps_Map_Android Mapview - Fatal编程技术网

Java Android:是否可以在地图视图的顶部绘制一个视图作为覆盖

Java Android:是否可以在地图视图的顶部绘制一个视图作为覆盖,java,android,google-maps,map,android-mapview,Java,Android,Google Maps,Map,Android Mapview,事实上,这是一个问题 我想在地图的顶部画一个视图作为覆盖,只是我的视图由带9patch背景的线性布局和两个textview组成。我需要在运行时绘制这些布局,它们将链接到地理位置 定义这样的视图没有问题,但是创建一个覆盖来处理这样的绘制是有问题的…是-这就是框架布局的用途!FrameLayout中的子项显示在彼此的顶部,最后一项显示在顶部,第一项显示在底部 将您的MapView作为FrameLayout的第一个子项,将LinearLayout作为第二个子项。您可以通过将视图转换为位图来创建一个可绘

事实上,这是一个问题

我想在地图的顶部画一个视图作为覆盖,只是我的视图由带9patch背景的线性布局和两个textview组成。我需要在运行时绘制这些布局,它们将链接到地理位置


定义这样的视图没有问题,但是创建一个覆盖来处理这样的绘制是有问题的…

是-这就是
框架布局的用途!
FrameLayout
中的子项显示在彼此的顶部,最后一项显示在顶部,第一项显示在底部


将您的MapView作为FrameLayout的第一个子项,将LinearLayout作为第二个子项。

您可以通过将视图转换为位图来创建一个可绘制视图。

实际上,没有办法实现我想要的,我找到了一种将任何布局转换为位图的方法,但首先,您需要在根视图上调用布局并定义它的边界,因此在我的例子中,它与我用于解决方案的在画布上简单绘制相同。当您的布局已经在屏幕上绘制时,将布局转换为位图是一件好事,但当您需要从头开始在画布上绘制布局时,在画布上进行简单绘制并没有任何好处。

或者您可以尝试使用此方法。具有相同的效果: 您可以修改它,就像您想要显示任何您喜欢的视图一样