3

2 つの要素を持つ相対レイアウトがあります。そのうちの 1 つが隠されています。このようなもの(例のために簡略化)

<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 を返そうとしましたが、オプション画像のリスナーは呼び出されません。

4

2 に答える 2

0

Ken Wolf が言うように、クリック可能な属性を変更する必要があります。

layout_overlay.setClickable(false)

于 2014-01-13T18:15:45.420 に答える