Android-滑动在scrollView上不起作用

Android-滑动在scrollView上不起作用,android,layout,scrollview,swipe,Android,Layout,Scrollview,Swipe,我有滑动选项卡,每个选项卡都有一个scrollView,但我不能在scrollView的区域上滑动,它只允许我在scrollView布局之外滑动 编辑:添加了布局xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" andro

我有滑动选项卡,每个选项卡都有一个scrollView,但我不能在scrollView的区域上滑动,它只允许我在scrollView布局之外滑动

编辑:添加了布局xml

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:orientation="vertical"
 android:background="#f5f5f5" >

   <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="15dp"
    android:text="Sepet Girişi"
    android:textColor="#b7102f"
    android:textSize="25dp"
    android:id="@+id/tvCart">
  </TextView>

   <ViewFlipper
    android:id="@+id/viewflipper"
    android:layout_width="fill_parent"
    android:layout_height="380dp"
    android:layout_margin="6dp"
    android:clickable="true">


    <ScrollView
        android:layout_width="wrap_content"
        android:layout_height="400dp"
        android:id="@+id/scrollView"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" >

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"

        android:orientation="vertical" >
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="25dp"
            android:text="Üst Bilgiler"
            android:gravity="center"

            android:background="#2F4F4F"
            android:textSize="15dp"
            android:id="@+id/tvTopInfos"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />


            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Açık Sepetler"
                android:id="@+id/tvOpenBasket"
                android:layout_below="@+id/tvTopInfos"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:layout_marginTop="20dp" />
        <Spinner
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/spinnerOpenBasket"
            android:spinnerMode="dropdown"
            android:prompt="@string/search_hint"
            android:layout_below="@+id/tvOpenBasket"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />



        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Sepet Tipi"
            android:id="@+id/tvBasketType"
            android:layout_below="@+id/spinnerOpenBasket"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <Spinner
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/spinnerBasketType"
            android:layout_below="@+id/tvBasketType"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Sepet Adı"
            android:paddingTop="20dp"
            android:id="@+id/tvBasketName"
            android:layout_below="@+id/spinnerBasketType"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/etBasketName"
            android:layout_toRightOf="@+id/tvBasketName"
            android:layout_alignBottom="@+id/tvBasketName"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Özel Notlar"
            android:id="@+id/tvSpecialNotes"
            android:paddingTop="20dp"

            android:layout_below="@+id/tvBasketName"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/etSpecialNotes"
            android:layout_below="@+id/tvBasketName"
            android:layout_toRightOf="@+id/tvSpecialNotes"
            android:layout_alignBottom="@+id/tvSpecialNotes"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Fatura Müşterisi"
            android:paddingTop="20dp"
            android:textStyle="bold"
            android:id="@+id/tvBillCustomer"
            android:layout_below="@+id/etSpecialNotes"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Teslimat Tipi"
            android:id="@+id/tvDeliveryType"
            android:layout_below="@+id/tvBillCustomer"
            android:layout_marginTop="10dp"
            android:layout_alignRight="@+id/tvBasketName"
            android:layout_alignEnd="@+id/tvBasketName" />

        <Spinner
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/spinnerDeliveryType"
            android:layout_below="@+id/tvDeliveryType"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingTop="30dp"
            android:text="Teslimat Notları"
            android:id="@+id/tvDeliveryNotes"
            android:layout_below="@+id/spinnerDeliveryType"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/etDeliveryNotes"
            android:paddingTop="30dp"
            android:layout_below="@+id/spinnerDeliveryType"
            android:layout_toRightOf="@+id/tvDeliveryNotes"
            android:layout_alignBottom="@+id/tvDeliveryNotes"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true"  />


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_below="@id/etDeliveryNotes"
            android:layout_weight="100"
            android:id="@+id/llDates1"
            android:paddingLeft="10dp"
            android:paddingRight="10dp" >

            <TextView
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="2"
                android:text="Sipariş Tarihi"
                android:id="@+id/tvOrderDate"
                android:layout_below="@+id/etDeliveryNotes"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true" />


            <TextView
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:text="Teslim Tarihi"
                android:layout_weight="2"
                android:id="@+id/tvDeliveryDate"

                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:nestedScrollingEnabled="false" />



   </LinearLayout>

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/datePickerOrderDate"
            android:layout_below="@+id/llDates1"
             />


        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/datePickerDeliveryDate"
            android:layout_below="@+id/llDates1"
            android:nestedScrollingEnabled="true" />


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Son Teslim Tarihi"
            android:id="@+id/tvLastDeliveryDate"
            android:layout_below="@+id/datePickerDeliveryDate"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:nestedScrollingEnabled="false" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/datePickerLastDeliveryDate"
            android:layout_below="@+id/tvLastDeliveryDate"
            android:nestedScrollingEnabled="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Ödeme Tarihi"
            android:id="@+id/tvPaymentDate"
            android:layout_below="@+id/datePickerLastDeliveryDate"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:nestedScrollingEnabled="false" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/datePickerPaymentDate"
            android:layout_below="@+id/tvPaymentDate"
            android:nestedScrollingEnabled="true" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="İstenen Fatura Tarihi"
            android:id="@+id/tvRequestedBillDate"
            android:layout_below="@+id/datePickerPaymentDate"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:nestedScrollingEnabled="false" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/datePickerRequestedBillDate"
            android:layout_below="@+id/tvRequestedBillDate"
            android:nestedScrollingEnabled="true" />


    </RelativeLayout>

    </ScrollView>
第一页结束。 第二个标签开始


应该是这样的。如果您甚至可以在ScrollView中滑动选项卡,您将无法滚动ScrollView的内容。ScrollView捕获运动并使用它,因此选项卡不会被滑动。

这是因为ScrollView拦截触摸。有必要确定滚动动作。您需要创建自定义滚动视图。它覆盖了这个方法

 @Override
    public boolean onTouch(View v, MotionEvent event) {
        switch (event.getActionMasked()) {
            case MotionEvent.ACTION_DOWN:
                mStartX = event.getX();
                mStartY = event.getY();
                break;
            case MotionEvent.ACTION_MOVE:
                if (mStartY - event.getY() > DELTA_DISTANCE)
                    toDrug(v, getActivity());
                if (Math.abs(mStartX - event.getX()) > DELTA_DISTANCE / 2)
                    return true;
                break;
            case MotionEvent.ACTION_CANCEL:
            case MotionEvent.ACTION_UP:
                mStartX = -1;
                mStartY = -1;
        }
        return false;
    }

请发布布局的xml。@BasvanStein我添加了xml布局。但它在facebook、swarm、instagram等网站上运行良好。它们都有滚动视图和选项卡。它们确实有滚动视图和选项卡。如果您能够在scrollview和change选项卡中滑动,您将如何查看scrollview的全部内容?
 @Override
    public boolean onTouch(View v, MotionEvent event) {
        switch (event.getActionMasked()) {
            case MotionEvent.ACTION_DOWN:
                mStartX = event.getX();
                mStartY = event.getY();
                break;
            case MotionEvent.ACTION_MOVE:
                if (mStartY - event.getY() > DELTA_DISTANCE)
                    toDrug(v, getActivity());
                if (Math.abs(mStartX - event.getX()) > DELTA_DISTANCE / 2)
                    return true;
                break;
            case MotionEvent.ACTION_CANCEL:
            case MotionEvent.ACTION_UP:
                mStartX = -1;
                mStartY = -1;
        }
        return false;
    }