底部 Sheet 和 ListView

Bottom Sheet and ListView

当我在 ListView 中向下滚动时,BottomSheep 开始关闭。有没有什么办法可以做到这一点,只有当你触摸底部 Sheet Peek(举个例子)时,闭包的交互才会发生。还有一个例子感兴趣的是BottomSheet哪里被手指触摸挡住了,也就是代码打开和关闭。

那是因为嵌套的滚动事件被向上传递到底部 sheet。您需要做的是通过将 isNestedScrollingEnabled 设置为 false (Kotlin) 或 setNestedScrollingEnabled(false) (Java).

来禁用此行为

这必须在底部的直接子项中设置 Sheet 但该子项需要支持嵌套滚动。因此,将 ListView 包裹在 NestedScrollViewSwipeRefreshLayout 或任何支持嵌套滚动的内容中,并禁用嵌套滚动,如下所示

swipeRefreshLayout?.isNestedScrollingEnabled = false

或 java

swipeRefreshLayout.setNestedScrollingEnabled(false);