问题
RecyclerView正常运行,并且在不打开detailFragment
时不会剪切任何视图。但是,每当我从RecylerView
项目启动的detailFragment
返回时,它就会切断我的recylcerview
项目的最后一项。
我仅在api 26
的仿真器上遇到此问题。当我在api 28
手机中运行它时,它可以正常工作。但是我想我可能会丢失一些东西。
fragment_main
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:background="@color/colorWhite">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/fragment_main_abl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:elevation="0dp"
android:background="@color/colorWhite"
android:fitsSystemWindows="true">
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/fragment_main_ctbl"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:contentScrim="@android:color/white"
app:expandedTitleTextAppearance="@color/colorPrimaryText"
android:fitsSystemWindows="true">
<include layout="@layout/header_fragment_main"
app:layout_collapseMode="parallax"/>
<androidx.appcompat.widget.Toolbar
android:id="@+id/fragment_main_tb"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin">
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.CollapsingToolbarLayout>
<com.google.android.material.tabs.TabLayout
android:id="@+id/fragment_main_tl"
android:layout_width="match_parent"
android:layout_height="@dimen/fragment_main_tl_height"
app:tabMode="scrollable"
app:tabSelectedTextColor="@color/colorPrimary"
app:tabTextColor="@color/colorUnselected"/>
</com.google.android.material.appbar.AppBarLayout>
<androidx.viewpager.widget.ViewPager
android:id="@+id/fragment_main_vp"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior"/>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
fragment_child
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@android:color/white"
>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/fragment_child_rv"
android:layout_width="0dp"
android:layout_height="0dp"
android:clipToPadding="false"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
注意
recyclerView
添加底部填充。我试过了
这样就可以了,但是在我的recyclerView
起作用的时候
正确地在底部看到多余的填充nestedScrollView
上使用recyclerView
,因为我希望recyclerView
尽可能回收利用答案 0 :(得分:0)
替换
app:layout_scrollFlags="scroll|exitUntilCollapsed"
使用
app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"
解决了我的问题。