0

我正在开发一个应用程序,其中包含屏幕上半部分的图像和下半部分的网格视图,如下所示:

<de.test.gridview.Image
    android:id="@+id/image_container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:fadingEdgeLength="0dp"
    android:scrollbars="none"
    android:visibility="gone" />


<de.test.gridview.DraggableGridView
    android:id="@+id/grid_view1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/topnews_container"
    android:background="#FFF"
    android:gravity="center"
    android:numColumns="auto_fit"
    android:stretchMode="none"
    android:tag="grid_view_tag" >
</de.test.gridview.DraggableGridView>

Image 设置为 visibility=gone 并稍后在代码中手动设置为可见。当我现在拖动 gridview 的孩子时,我无法将它们拖动到屏幕上半部分的图像上。他们总是在图像后面,但从不在图像前面。我试过用

gridView.bringToFront()

并且在gridView中我也尝试了这个功能。我还使用 gridView.bringChildToFront(child) 对 gridview 的子级进行了尝试。但没有任何效果。

有人有想法吗?

4

1 回答 1

0

我猜想将属性设置为 View.GONE 的视图无法通过bringToFront(). 所以我相信以下方法会起作用(如果你试图将网格带到 z 的前面/顶部):

gridView.setVisibility(View.INVISIBLE);
gridView.bringToFront();

但看起来你想把 imageView 放在前面(让 gridView 在后面而不是前面)。如果是这样,您需要:

imageView.setVisibility(View.INVISIBLE);
imageView.bringToFront();
于 2014-02-24T11:29:32.640 回答