底部 Sheet 和 ListView
Bottom Sheet and ListView
当我在 ListView 中向下滚动时,BottomSheep 开始关闭。有没有什么办法可以做到这一点,只有当你触摸底部 Sheet Peek(举个例子)时,闭包的交互才会发生。还有一个例子感兴趣的是BottomSheet哪里被手指触摸挡住了,也就是代码打开和关闭。
那是因为嵌套的滚动事件被向上传递到底部 sheet。您需要做的是通过将 isNestedScrollingEnabled
设置为 false (Kotlin) 或 setNestedScrollingEnabled(false)
(Java).
来禁用此行为
这必须在底部的直接子项中设置 Sheet 但该子项需要支持嵌套滚动。因此,将 ListView
包裹在 NestedScrollView
、SwipeRefreshLayout
或任何支持嵌套滚动的内容中,并禁用嵌套滚动,如下所示
swipeRefreshLayout?.isNestedScrollingEnabled = false
或 java
swipeRefreshLayout.setNestedScrollingEnabled(false);
当我在 ListView 中向下滚动时,BottomSheep 开始关闭。有没有什么办法可以做到这一点,只有当你触摸底部 Sheet Peek(举个例子)时,闭包的交互才会发生。还有一个例子感兴趣的是BottomSheet哪里被手指触摸挡住了,也就是代码打开和关闭。
那是因为嵌套的滚动事件被向上传递到底部 sheet。您需要做的是通过将 isNestedScrollingEnabled
设置为 false (Kotlin) 或 setNestedScrollingEnabled(false)
(Java).
这必须在底部的直接子项中设置 Sheet 但该子项需要支持嵌套滚动。因此,将 ListView
包裹在 NestedScrollView
、SwipeRefreshLayout
或任何支持嵌套滚动的内容中,并禁用嵌套滚动,如下所示
swipeRefreshLayout?.isNestedScrollingEnabled = false
或 java
swipeRefreshLayout.setNestedScrollingEnabled(false);