【问题标题】:Viewpager inside NestedScrollView not scrollingNestedScrollView 中的 Viewpager 不滚动
【发布时间】:2020-04-28 22:11:16
【问题描述】:

我想在 NestedScrollView 中同时滚动 viewpager 和 RecyclerView。 ViewPager 不使用 NestedScrollView 滚动。这是我的 XML:

<android.support.v4.widget.NestedScrollView
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/scrollview"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:fillViewport="true"
  tools:context="com.nobakhti.haidar.nosazimadares.MainActivity">

  <LinearLayout
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.v4.view.ViewPager
      android:id="@+id/pager"
      android:layout_width="match_parent"
      android:layout_height="250dp"
      android:layout_gravity="top"/>

    <me.relex.circleindicator.CircleIndicator
      android:id="@+id/indicator"
      android:layout_width="match_parent"
      android:layout_height="15dp"
      android:layout_alignBottom="@+id/pager"
      android:layout_alignParentStart="true"
      android:layout_marginBottom="2dp"
      android:layout_alignParentLeft="true"/>

    <android.support.v7.widget.RecyclerView
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layoutDirection="ltr"
      tools:listitem="@layout/adapter_titles"
      android:id="@+id/news_title"/>

  </LinearLayout>

</android.support.v4.widget.NestedScrollView>

这里附上截图:

【问题讨论】:

    标签: java android scroll android-viewpager android-nestedscrollview


    【解决方案1】:

    使用CoordinatorLayout 包装NestedScrollView 像这样

    <androidx.coordinatorlayout.widget.CoordinatorLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            tools:context="com.nobakhti.haidar.nosazimadares.MainActivity"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    
          <android.support.v4.widget.NestedScrollView
    
          android:id="@+id/scrollview"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:fillViewport="true">
    
          <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
            <android.support.v4.view.ViewPager
              android:id="@+id/pager"
              android:layout_width="match_parent"
              android:layout_height="250dp"
              android:layout_gravity="top"/>
    
            <me.relex.circleindicator.CircleIndicator
              android:id="@+id/indicator"
              android:layout_width="match_parent"
              android:layout_height="15dp"
              android:layout_alignBottom="@+id/pager"
              android:layout_alignParentStart="true"
              android:layout_marginBottom="2dp"
              android:layout_alignParentLeft="true"/>
    
            <android.support.v7.widget.RecyclerView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layoutDirection="ltr"
              tools:listitem="@layout/adapter_titles"
              android:id="@+id/news_title"/>
    
          </LinearLayout>
    
        </android.support.v4.widget.NestedScrollView>
        </androidx.coordinatorlayout.widget.CoordinatorLayout>
    

    【讨论】:

    • 感谢您的提示。我做了这个更改,但问题没有解决
    【解决方案2】:

    NestedScrollView 替换为ScrollView。应该可以的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-14
      相关资源
      最近更新 更多