0

我正在尝试在布局上实现滑动手势。这是xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ViewSwitcher
    android:id="@+id/switcher"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/blister_background" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:weightSum=".9" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight=".3"
            android:orientation="horizontal"
            android:weightSum="1" >

            <ImageView
                android:id="@+id/imgOne"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />

            <ImageView
                android:id="@+id/imgTwo"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight=".3"
            android:orientation="horizontal"
            android:weightSum="1" >

            <ImageView
                android:id="@+id/imgThree"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />

            <ImageView
                android:id="@+id/imgFour"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight=".3"
            android:orientation="horizontal"
            android:weightSum="1" >

            <ImageView
                android:id="@+id/imgFive"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />

            <ImageView
                android:id="@+id/imgSix"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight=".5"
                android:src="@drawable/yellow" />
        </LinearLayout>
    </LinearLayout>
</ViewSwitcher>

</RelativeLayout>

在 java 代码中,我为 设置了setOnTouchListenerViewSwitcher返回由 . 返回的布尔值GestureDetector。所以我重写了该onFling方法,实际上它有效。唯一的问题是,如果我不触摸 Imageviews,它就可以工作。

ImageViews 正在监听该onClick事件。

那么,我怎样才能在 Imageviews 上滑动并仍然调用onFling方法中的代码呢?

我试图为onTouchListener他的 ImageViews 设置偶数,但他们不再捕捉到该onCLick事件。

4

1 回答 1

0

ViewSwitcher布局作为wrap_content放置,如下所示:

<ViewSwitcher
    android:id="@+id/switcher"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/blister_background" >
于 2013-04-17T18:08:40.977 回答