【发布时间】:2021-01-31 20:49:20
【问题描述】:
我有一个 BottomAppBar,当 RecyclerView 通过其属性 hideOnScroll 滚动时,它会隐藏和显示。
当BottomAppBar 隐藏或显示时,我想更改FloatingActionButton 对齐模式。
我还没有找到任何有关如何实现此目的的侦听器或函数。有没有,我怎样才能做到这一点?
【问题讨论】:
标签: android android-bottomappbar
我有一个 BottomAppBar,当 RecyclerView 通过其属性 hideOnScroll 滚动时,它会隐藏和显示。
当BottomAppBar 隐藏或显示时,我想更改FloatingActionButton 对齐模式。
我还没有找到任何有关如何实现此目的的侦听器或函数。有没有,我怎样才能做到这一点?
【问题讨论】:
标签: android android-bottomappbar
我还没有找到可以合作的听众。
我通过重写 BottomAppBar.Behavior 类及其方法 slideUp() 和 slideDown() 实现了我想要的行为。
在这些方法中,我只是适当地更改了BottomAppBars FAB 对齐模式,仅此而已。现在只需通过其 XML 属性 app:layout_behavior="MyBottomAppBarBehavior" 告诉 BottomAppBar 使用这个新的行为类。
但我认为这很糟糕,因为它有点消耗大量资源,并且在低端或旧设备上无法流畅显示。当您快速执行此操作时,它还会重新对齐 BottomAppBar 的 menu。
所以我决定在隐藏BottomAppBar 时隐藏FAB,反之亦然。我通过覆盖FloatingActionButton.Behavior 类并在其中做一些事情同样实现了这一点。你可以在网上找到很好的教程。
【讨论】: