【问题标题】:How can I set a listener that fires when a BottomAppBar hides/shows?如何设置在 BottomAppBar 隐藏/显示时触发的侦听器?
【发布时间】:2021-01-31 20:49:20
【问题描述】:

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

我还没有找到任何有关如何实现此目的的侦听器或函数。有没有,我怎样才能做到这一点?

【问题讨论】:

    标签: android android-bottomappbar


    【解决方案1】:

    我还没有找到可以合作的听众。

    我通过重写 BottomAppBar.Behavior 类及其方法 slideUp()slideDown() 实现了我想要的行为。

    在这些方法中,我只是适当地更改了BottomAppBars FAB 对齐模式,仅此而已。现在只需通过其 XML 属性 app:layout_behavior="MyBottomAppBarBehavior" 告诉 BottomAppBar 使用这个新的行为类。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-12
      • 1970-01-01
      • 2018-12-29
      • 1970-01-01
      • 1970-01-01
      • 2019-01-23
      • 2022-10-17
      • 1970-01-01
      相关资源
      最近更新 更多