MapView上的android z顺序视图
我有一个带有ItemizedOverlays的谷歌地图视图。然后,我添加一个imageView(不是覆盖)并附加到MapView。如何使ItemizedOverlays位于imageView的顶部?我希望地图视图标记位于顶部MapView上的android z顺序视图,android,android-layout,z-order,Android,Android Layout,Z Order,我有一个带有ItemizedOverlays的谷歌地图视图。然后,我添加一个imageView(不是覆盖)并附加到MapView。如何使ItemizedOverlays位于imageView的顶部?我希望地图视图标记位于顶部 我知道叠加的添加顺序决定了叠加的z顺序,但如何控制新附着视图和叠加的z顺序 MapView扩展了视图组,因此我假设覆盖图是作为视图组的子对象绘制的。这意味着您应该能够使用ViewGroup.addView(视图子级,int索引)插入ImageView,使其显示在覆盖层下面
我知道叠加的添加顺序决定了叠加的z顺序,但如何控制新附着视图和叠加的z顺序 MapView扩展了视图组,因此我假设覆盖图是作为视图组的子对象绘制的。这意味着您应该能够使用ViewGroup.addView(视图子级,int索引)插入ImageView,使其显示在覆盖层下面 不过,更好的方法是自己扩展MapView,并尝试覆盖(A)ViewGroup.getChildAt(int-index)或(b)ViewGroup.getChildDrawingOrder(int-childCount,int-i)。取决于MapView实现其绘制顺序的方式(例如,LinearLayout的Z顺序是其子视图顺序) (a)见以下答案:
对于(b),您还需要通过调用setChildrenDrawingOrderEnabled(布尔启用)来设置启用的绘图顺序。MapView扩展了视图组,因此我假设覆盖图是作为视图组的子对象绘制的。这意味着您应该能够使用ViewGroup.addView(视图子级,int索引)插入ImageView,使其显示在覆盖层下面 不过,更好的方法是自己扩展MapView,并尝试覆盖(A)ViewGroup.getChildAt(int-index)或(b)ViewGroup.getChildDrawingOrder(int-childCount,int-i)。取决于MapView实现其绘制顺序的方式(例如,LinearLayout的Z顺序是其子视图顺序) (a)见以下答案: 对于(b),还需要通过调用setChildrenDrawingOrderEnabled(布尔启用)来设置启用的绘图顺序