如何设置在 BottomAppBar hides/shows 时触发的侦听器?

How can I set a listener that fires when a BottomAppBar hides/shows?

我有一个 BottomAppBar,当 RecyclerView 通过其属性 hideOnScroll 滚动时隐藏和显示。
我想在 BottomAppBar 隐藏或显示时更改 FloatingActionButton 对齐模式。

我还没有找到关于如何实现这一点的任何监听器或函数。有什么方法可以实现吗?

我还没有找到可以使用的侦听器。

我通过覆盖 BottomAppBar.Behavior class 及其方法 slideUp()slideDown().

实现了我想要的行为

在这些方法中,我只是适当地更改 BottomAppBars FAB 对齐模式,仅此而已。现在只需通过其 XML 属性 app:layout_behavior="MyBottomAppBarBehavior".

告诉 BottomAppBar 使用此新行为 class

但我认为这很糟糕,因为它有点占用大量资源并且在低端或旧设备上无法流畅显示。当您快速执行时,它还会重新对齐 BottomAppBarmenu

所以我决定在 BottomAppBar 隐藏时隐藏 FAB,反之亦然。我通过覆盖 FloatingActionButton.Behavior class 并在其中做一些事情来类似地实现了这一点。你可以在网上找到很好的教程。