Android-在每个viewpager recyclerview的基础上激活appbar滚动
我有一个带有两个选项卡的ViewPager,其中包含一个Recyclerview。 我正在使用支持库22.2.0(AppCompat、回收器视图…)。 我的viewpager xml最初是:Android-在每个viewpager recyclerview的基础上激活appbar滚动,android,android-viewpager,android-recyclerview,android-coordinatorlayout,Android,Android Viewpager,Android Recyclerview,Android Coordinatorlayout,我有一个带有两个选项卡的ViewPager,其中包含一个Recyclerview。 我正在使用支持库22.2.0(AppCompat、回收器视图…)。 我的viewpager xml最初是: <android.support.v4.view.ViewPager android:id="@+id/viewPager" app:layout_behavior="@string/appbar_scrolling_view_behavior" android:layout_wid
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_width="match_parent"
android:layout_height="match_parent" />
在viewpager中,默认布局行为应用于viewpager,它仍然在tab/recyclerview上激活appbar滚动
我的策略是在viewpager中取消激活appbar滚动,可能是这样的:
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
app:layout_behavior="@string/appbar_desactivated_behavior"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.v7.widget.RecyclerView
...
android:id="@+id/playlist1_rv"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
</android.support.v7.widget.RecyclerView>
并仅在我的第一个选项卡/回收视图中激活它。像这样:
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
app:layout_behavior="@string/appbar_desactivated_behavior"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.v7.widget.RecyclerView
...
android:id="@+id/playlist1_rv"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
</android.support.v7.widget.RecyclerView>
如果您使用的是ViewPager
,则需要在ViewPager
上设置appbar滚动查看行为,以获得正确的布局
您只需在RecyclerView
中关闭您不想滚动应用程序栏的嵌套滚动:
recyclerview.setNestedScrollingEnabled(false);
请注意,您可能在定位方面存在问题,您可能必须在recyclerview的底部放置appbar大小的边距。如果您的用户使用其他recyclerview向上滚动appbar,然后滑动到此recyclerview,页面底部将有一个空格