2012-10-08 56 views
1

我有一个Google MapView与ItemizedOverlays。然后我添加一个imageView(不是叠加层)并附加到MapView。我如何让ItemizedOverlays位于imageView之上?我希望MapView标记位于顶部。android z顺序查看地图查看

我知道添加叠加层的顺序决定叠加层的z顺序,但是如何控制新增附加视图的z顺序以及叠加层?

回答

1

MapView扩展了ViewGroup,所以我假设Overlays被绘制为ViewGroup的子元素。这意味着您应该能够使用ViewGroup.addView(View child,int index)插入ImageView以使其显示在叠加层下面。尽管如此,更好的方法是自己扩展MapView,并尝试覆盖(a)ViewGroup.getChildAt(int index)或(b)ViewGroup.getChildDrawingOrder(int childCount,int i)。取决于MapView如何实现其绘制顺序(LinearLayout的Z顺序,例如,是其子视图顺序为)。

对于(一)看到这个答案:Sort buttons alphabetically

对于(b)您还需要设置绘图通过调用setChildrenDrawingOrderEnabled启用顺序(能布尔)。