NestedScrollView nested LinearLayout cannot scroll

Log a problem with a particular SB. NestedScrollView nested LinearLayout cannot scroll.

The viewpager nested layout was used in the initial project, and LinearLayout could not be scrolled. I thought that the event distribution viewpager will consume the sliding time.

By prohibiting left and right swipes and calculating up and down gestures, LinearLayout still cannot scroll.

Original code:

<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"

       android:layout_width="match_parent"
       android:layout_height="match_parent">
       <LinearLayout
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:background="@color/bg"
           android:orientation="vertical"
           android:scrollbars="vertical">

           <LinearLayout
               android:id="@+id/custom_func_view"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:orientation="vertical"
               android:paddingTop="1px"
               android:paddingBottom="1px">

               <LinearLayout
                   android:id="@+id/custom_func_list"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:orientation="vertical">

               </LinearLayout>
           </LinearLayout>

           <LinearLayout
               android:id="@+id/system_func_view"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:orientation="vertical"
               android:paddingTop="1px"
               android:paddingBottom="1px">

               <LinearLayout
                   android:id="@+id/system_func_list"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:orientation="vertical">

               </LinearLayout>
           </LinearLayout>

           <View
               android:layout_width="match_parent"
               android:layout_height="1px"
               android:layout_marginLeft="15dp"
               android:layout_marginRight="15dp"
               android:background="@color/bg" />

           <View
               android:layout_width="match_parent"
               android:layout_height="20dp"
               android:background="@color/white" />

           <View
               android:layout_width="match_parent"
               android:layout_height="10dp"
               android:background="@color/bg" />

           <View
               android:layout_width="match_parent"
               android:layout_height="20dp"
               android:background="@color/white" />

           <LinearLayout
               android:layout_width="match_parent"
               android:layout_height="@dimen/top_bar_height"
               android:background="@color/white"
               android:gravity="center"
               android:orientation="horizontal"
               android:paddingLeft="15dp"
               android:paddingRight="15dp">

               <TextView
                   android:layout_width="wrap_content"
                   android:layout_height="match_parent"
                   android:ellipsize="end"
                   android:gravity="center_vertical"
                   android:singleLine="true"
                   android:text="跟进方式"
                   android:textColor="@color/black"
                   android:textSize="16sp" />

               <TextView
                   android:id="@+id/tv_task_info_follow"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:layout_gravity="center_horizontal"
                   android:layout_marginLeft="15dp"
                   android:background="@drawable/shape_storke_black_w_3"
                   android:gravity="center_vertical"
                   android:paddingLeft="15dp"
                   android:text="请选择" />
           </LinearLayout>

           <View
               android:layout_width="match_parent"
               android:layout_height="10dp"
               android:background="@color/white" />

           <LinearLayout
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:background="@color/white"
               android:orientation="horizontal"
               android:padding="15dp">

               <TextView
                   android:layout_width="wrap_content"
                   android:layout_height="match_parent"
                   android:ellipsize="end"
                   android:paddingTop="15dp"
                   android:singleLine="true"
                   android:text="跟进记录"
                   android:textColor="@color/black"
                   android:textSize="16sp" />

               <RelativeLayout
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:layout_marginLeft="20dp"
                   android:background="@drawable/shape_storke_black_w_3">

                   <EditText
                       android:id="@+id/tv_task_info_record"
                       android:layout_width="match_parent"
                       android:layout_height="wrap_content"
                       android:background="@drawable/edit_text_sms"
                       android:gravity="left"
                       android:hint="输入跟进记录情况"
                       android:maxLength="300"
                       android:minHeight="150dp"
                       android:padding="15dp"
                       android:text=""
                       android:textColor="@color/black"
                       android:textColorHint="@color/black_99"
                       android:textSize="18sp" />

                   <TextView
                       android:id="@+id/tv_num"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:layout_alignRight="@id/tv_task_info_record"
                       android:layout_alignBottom="@id/tv_task_info_record"
                       android:padding="15dp"
                       android:text="0/300"
                       android:textColor="@color/black_99"
                       android:textSize="12sp" />
               </RelativeLayout>
           </LinearLayout>

           <Button
               android:id="@+id/btn_save"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:layout_marginLeft="30dp"
               android:layout_marginTop="60dp"
               android:layout_marginRight="30dp"
               android:background="@color/blue"
               android:text="@string/save"
               android:textColor="@color/white"
               android:textSize="18sp" />

           <Button
               android:id="@+id/btn_change"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:layout_marginLeft="30dp"
               android:layout_marginTop="30dp"
               android:layout_marginRight="30dp"
               android:layout_marginBottom="50dp"
               android:background="@color/blue"
               android:text="转为我的客户"
               android:textColor="@color/white"
               android:textSize="18sp" />

       </LinearLayout>
</androidx.core.widget.NestedScrollView>

after modification

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/bg"
    android:orientation="vertical">

   <androidx.core.widget.NestedScrollView
       android:layout_width="match_parent"
       android:layout_height="match_parent">
       <LinearLayout
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:background="@color/bg"
           android:orientation="vertical"
           android:scrollbars="vertical">

           <LinearLayout
               android:id="@+id/custom_func_view"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:orientation="vertical"
               android:paddingTop="1px"
               android:paddingBottom="1px">

               <LinearLayout
                   android:id="@+id/custom_func_list"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:orientation="vertical">

               </LinearLayout>
           </LinearLayout>

           <LinearLayout
               android:id="@+id/system_func_view"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:orientation="vertical"
               android:paddingTop="1px"
               android:paddingBottom="1px">

               <LinearLayout
                   android:id="@+id/system_func_list"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:orientation="vertical">

               </LinearLayout>
           </LinearLayout>

           <View
               android:layout_width="match_parent"
               android:layout_height="1px"
               android:layout_marginLeft="15dp"
               android:layout_marginRight="15dp"
               android:background="@color/bg" />

           <View
               android:layout_width="match_parent"
               android:layout_height="20dp"
               android:background="@color/white" />

           <View
               android:layout_width="match_parent"
               android:layout_height="10dp"
               android:background="@color/bg" />

           <View
               android:layout_width="match_parent"
               android:layout_height="20dp"
               android:background="@color/white" />

           <LinearLayout
               android:layout_width="match_parent"
               android:layout_height="@dimen/top_bar_height"
               android:background="@color/white"
               android:gravity="center"
               android:orientation="horizontal"
               android:paddingLeft="15dp"
               android:paddingRight="15dp">

               <TextView
                   android:layout_width="wrap_content"
                   android:layout_height="match_parent"
                   android:ellipsize="end"
                   android:gravity="center_vertical"
                   android:singleLine="true"
                   android:text="跟进方式"
                   android:textColor="@color/black"
                   android:textSize="16sp" />

               <TextView
                   android:id="@+id/tv_task_info_follow"
                   android:layout_width="match_parent"
                   android:layout_height="match_parent"
                   android:layout_gravity="center_horizontal"
                   android:layout_marginLeft="15dp"
                   android:background="@drawable/shape_storke_black_w_3"
                   android:gravity="center_vertical"
                   android:paddingLeft="15dp"
                   android:text="请选择" />
           </LinearLayout>

           <View
               android:layout_width="match_parent"
               android:layout_height="10dp"
               android:background="@color/white" />

           <LinearLayout
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:background="@color/white"
               android:orientation="horizontal"
               android:padding="15dp">

               <TextView
                   android:layout_width="wrap_content"
                   android:layout_height="match_parent"
                   android:ellipsize="end"
                   android:paddingTop="15dp"
                   android:singleLine="true"
                   android:text="跟进记录"
                   android:textColor="@color/black"
                   android:textSize="16sp" />

               <RelativeLayout
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:layout_marginLeft="20dp"
                   android:background="@drawable/shape_storke_black_w_3">

                   <EditText
                       android:id="@+id/tv_task_info_record"
                       android:layout_width="match_parent"
                       android:layout_height="wrap_content"
                       android:background="@drawable/edit_text_sms"
                       android:gravity="left"
                       android:hint="输入跟进记录情况"
                       android:maxLength="300"
                       android:minHeight="150dp"
                       android:padding="15dp"
                       android:text=""
                       android:textColor="@color/black"
                       android:textColorHint="@color/black_99"
                       android:textSize="18sp" />

                   <TextView
                       android:id="@+id/tv_num"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:layout_alignRight="@id/tv_task_info_record"
                       android:layout_alignBottom="@id/tv_task_info_record"
                       android:padding="15dp"
                       android:text="0/300"
                       android:textColor="@color/black_99"
                       android:textSize="12sp" />
               </RelativeLayout>
           </LinearLayout>

           <Button
               android:id="@+id/btn_save"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:layout_marginLeft="30dp"
               android:layout_marginTop="60dp"
               android:layout_marginRight="30dp"
               android:background="@color/blue"
               android:text="@string/save"
               android:textColor="@color/white"
               android:textSize="18sp" />

           <Button
               android:id="@+id/btn_change"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:layout_marginLeft="30dp"
               android:layout_marginTop="30dp"
               android:layout_marginRight="30dp"
               android:layout_marginBottom="50dp"
               android:background="@color/blue"
               android:text="转为我的客户"
               android:textColor="@color/white"
               android:textSize="18sp" />

       </LinearLayout>
   </androidx.core.widget.NestedScrollView>
</LinearLayout>
NestedScrollView is written in the root directory. 
That's right, it's that mentally handicapped. I hereby record it, if similar situations occur in the future, cut the chicken live!

Guess you like

Origin blog.csdn.net/x158454996/article/details/128332749