以编程方式将视图置于最前面

Bring view to the front prprogrammaticly

我正在使用 frameLayout 并尝试在单击 imageButton 时以编程方式将视图 放在 另一个视图上。我使用 Frame Layout,因为有人告诉我它允许您相互查看。但是,单击按钮时,imageView 会消失在另一个视图的后面,而不是在前面。 这是我的布局- "hole" 是 imageButton,只要单击它,imageView "goola" 就需要在其上移动。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >

<ImageButton
    android:id="@+id/hole"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
            android:layout_marginLeft="100dp"
                    android:background="@android:color/transparent"
    android:src="@drawable/home0" />

<ImageView
    android:id="@+id/goola"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dp"
    android:src="@drawable/goola" />

这里是 JAVA(onClick 方法)

@Override
public void onClick(View v)
{
    ImageButton b=(ImageButton)v;
    int[] location = new int[2];     
    b.getLocationOnScreen(location);

     float startX = location[0];
     float startY = location[1];
        goola.setX(startX);
        goola.setY(startY);
}

如果哪位有解决办法的能写出好的答案不胜感激! 非常感谢 :)

您可以尝试在适当的视图上调用 View#bringToFront()