如何在具有多个图像视图的framelayout中单击内部图像

时间:2014-10-17 07:34:50

标签: android android-layout

我有一个带有多个图像视图的framelayout的xml。我的目的是在每个图像可见时单击它们,但我会一直点击最外面的图像。它们具有透明的部分,因此它们将位于正确的位置。请帮忙

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ImageView
            android:id="@+id/base_rack"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/storemap" />

        <ImageView
            android:id="@+id/mrack1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack1" />

        <ImageView
            android:id="@+id/mrack2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack2" />

        <ImageView
            android:id="@+id/mrack3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack3" />

        <ImageView
            android:id="@+id/mrack4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack4" />

        <ImageView
            android:id="@+id/mrack5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack5" />

        <ImageView
            android:id="@+id/mrack6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack6" />

        <ImageView
            android:id="@+id/mrack7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack7" />

        <ImageView
            android:id="@+id/mrack8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack8" />

        <ImageView
            android:id="@+id/mrack9"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack9" />

        <ImageView
            android:id="@+id/mrack10"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack10" />

        <ImageView
            android:id="@+id/mrack11"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack11" />

        <ImageView
            android:id="@+id/mrack12"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack12" />

        <ImageView
            android:id="@+id/mrack13"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack13" />

        <ImageView
            android:id="@+id/mrack14"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/rack14" />
    </FrameLayout>

</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

您可能希望将此更改为FrameLayout,其背景为商店图像,然后使用RelativeLayout上方/下方的布局包含RelativeLayout,其中框架的图像一个在另一个之下

答案 1 :(得分:0)

如果你想让图像可以点击,一个很好的选择是使用ImageButtons而不是ImageView。然后使用Anand的建议并使包含ImageButtons的布局具有背景图像。另一种选择是使后面的ImageView.setClickable(false); 。我希望这有帮助