【问题标题】:Android CollapsingToolbarLayout custom snap scrollflagAndroid CollapsingToolbarLayout 自定义捕捉滚动标志
【发布时间】:2016-02-03 07:55:39
【问题描述】:

我正在尝试控制 collpasingtoolbarlayout 的 snap 滚动标志的滚动行为。根据本教程link SCROLL_FLAG_SNAP:在滚动结束时,如果视图仅部分可见,则它将被捕捉并滚动到最近的边缘。我想要实现的是使 Snap Behavior 仅从 Bottom 到 Top 以 1 方向工作。这意味着如果该视图离顶部边缘很近并且用户从底部滚动它应该在这个原因中正常工作。否则,例如,如果用户从上到下滚动它应该什么都不做。

这是 Google 的圣诞老人应用程序的 GIF,我正在尝试实现相同的行为。

Gif Link

【问题讨论】:

  • 嗨@Joe,您是否设法解决了AppBarLayout 的不良快照配置?我和你一样解决了类似的问题。

标签: android scroll android-collapsingtoolbarlayout


【解决方案1】:

这是a link 在支持快照滚动标志之前发布的帖子,其中包含重新创建相同行为的代码。您或许可以修改此自定义行为以满足您的需求。

在该代码中,您会发现以下部分需要针对“接近顶部或底部”逻辑进行编辑:

if (topOffset < -(scrollRange / 2f)) {     //Close to top
        // Snap up (to fully invisible)
        animateOffsetTo(-scrollRange);
    } else {                               //Close to bottom
        // Snap down (to fully visible)
        animateOffsetTo(0);
    }

您还需要包含将滚动开始时的偏移量与滚动停止时的偏移量进行比较以确定滑动方向的逻辑。

祝你好运!

【讨论】:

    猜你喜欢
    • 2023-03-09
    • 1970-01-01
    • 2021-07-10
    • 1970-01-01
    • 2015-06-15
    • 2019-07-14
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多