在ViewPager2中使用BottomSheetBehavior时,可以通过设置Behavior的peekHeight来避免此问题。peekHeight用于设置BottomSheet折叠时的高度,例如:
val bottomSheetBehavior = BottomSheetBehavior.from(bottomSheetView)
bottomSheetBehavior.peekHeight = resources.getDimensionPixelSize(R.dimen.bottom_sheet_peek_height)
要注意的是,这里的bottomSheetView应该是Fragment中的布局文件中BottomSheet的根View。其中,R.dimen.bottom_sheet_peek_height是一个在dimens.xml文件中定义的维度值。这里的getDimensionPixelSize方法用于将维度值转换为像素值。
设置完peekHeight后,BottomSheet在ViewPager2中就会在折叠状态下只占用指定的高度,而不会占用所有高度了。