使用 BottomSheetBehavior 显示片段

Posted

技术标签:

【中文标题】使用 BottomSheetBehavior 显示片段【英文标题】:Using BottomSheetBehavior to show fragments 【发布时间】:2019-01-24 10:48:59 【问题描述】:

我正在尝试使用来自 Material 的 BottomSheetBehavior。问题是它没有得到很好的描述,也没有足够的例子。 One Meduim 上的示例,但它只展示了基础知识和非常简单的实现。

我真正需要的是来自 Material here 的东西。但是,我不想单击菜单项来显示 BottomSheet,而是在用户从RecyclerView 中选择一个项目时显示它。此外,在用户将其拉起之前,窥视高度应仅显示 BottomSheet 布局中的第一个元素。

如何获得这种方法?有什么有用的例子吗?

【问题讨论】:

【参考方案1】:

通过调用bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HIDDEN) 开始活动或片段时隐藏底部工作表。

在适配器的 onClick 中,调用 bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HALF_EXPANDED) 使底部工作表可见

【讨论】:

以上是关于使用 BottomSheetBehavior 显示片段的主要内容,如果未能解决你的问题,请参考以下文章

Android使用BottomSheetBehavior 和 BottomSheetDialog实现底部弹窗

Android使用BottomSheetBehavior 和 BottomSheetDialog实现底部弹窗

将 BottomSheetBehavior 与内部 CoordinatorLayout 一起使用

嵌套的 RecyclerView 滚动无法向下滚动 ViewPager2 的 BottomSheetBehavior

BottomSheetBehavior 该视图不是 CoordinatorLayout 的子视图

BottomSheetBehavior 之 java.lang.IllegalArgumentException: The view is not associated with BottomShe