更改能见度后没有触摸事件

时间:2013-06-07 16:02:10

标签: android touch

我有两个元素的相对布局。其中一个是隐藏的。像这样的东西(例子简化)

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ImageView
        android:id="@+id/fullscreenimage"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <AbsoluteLayout
        android:id="@+id/layout_overlay"
        android:layout_width="200dp"
        android:layout_height="100dp"
        android:layout_centerInParent="true"
        android:visibility="gone" >

        <ImageView
            android:id="@+id/imageView_option1"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_x="0dp"
            android:layout_y="0dp"
            android:src="@drawable/image1"
            android:tag="1" />

        <ImageView
            android:id="@+id/imageView_option2"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_x="100dp"
            android:layout_y="0dp"
            android:src="@drawable/image2"
            android:tag="2" />
    </AbsoluteLayout>
</RelativeLayout>

在全屏图像上检测到长按(而不是抬起手指)后,我想显示这些选项并突出显示用户手指下的选项。我更改了叠加布局的可见性,但从不调用选项图像上的touchListeners。尝试从全屏图像的touchlistener返回false,这一直被调用,但是从不调用选项图像上的监听器。

2 个答案:

答案 0 :(得分:0)

ImageViews通常无法点击,除非您明确将它们设置为,否则不会正常触发onClickListeners。

添加

android:clickable="true"
android:enabled="true"

给他们。

答案 1 :(得分:0)

您必须更改可点击属性,例如Ken Wolf说。

layout_overlay.setClickable(false)