实际上,主题是一个问题。
我想在地图上绘制一个视图作为叠加层,我的视图只包含9patch背景的线性布局和内部的两个textview。我需要在运行时绘制这些布局,它们将链接到地理位置
定义此类视图没有问题,但创建一个可以处理此类绘制的叠加层是有问题的......
答案 0 :(得分:6)
是的 - 这就是FrameLayout
的用途! FrameLayout
中的儿童显示在彼此之上,最后一项显示在顶部,第一项显示在底部。
将MapView作为FrameLayout的第一个子项,将LinearLayout作为第二个子项。
答案 1 :(得分:1)
实际上没有办法做我想要的,我已经找到了将任何布局转换为位图的方法,但首先你需要在根视图上调用布局并定义它的边界,所以在我的情况下它与我用于解决方案的画布上的简单绘图相同。当您的布局已经在屏幕上绘制时,将布局转换为位图是一件好事,但是当您需要从头开始在画布上绘制布局时,由于在画布上进行简单绘制而没有任何好处。
答案 2 :(得分:0)
您可以通过将其转换为位图来创建视图中的可绘制内容。
答案 3 :(得分:0)
或者您可以尝试使用它。具有相同的效果:https://github.com/jgilfelt/android-mapviewballoons#readme 你可以修改它,就像你想要显示你喜欢的任何视图一样