Skip to content

FAB 滚动隐藏功能在页面切换后失效 #84

Description

@shadowfish07

问题描述

FloatingActionButton (FAB) 的下滑隐藏功能在特定页面切换场景下会失效。

复现步骤

  1. 打开应用,进入每日阅读页面 ✅ - FAB 滚动隐藏功能正常
  2. 切换到未读页面 ✅ - FAB 滚动隐藏功能正常
  3. 切换回每日阅读页面 ❌ - FAB 下滑隐藏功能失效

预期行为

在所有书签列表页面(每日阅读、未读、阅读中、已归档、收藏),FAB 应该:

  • 向下滚动时自动隐藏
  • 向上滚动时自动显示
  • 在页面顶部时始终显示
  • 页面切换后功能保持正常

实际行为

从未读页切换到每日阅读页后,FAB 的滚动隐藏功能完全失效,无论如何滚动都不会隐藏。

技术分析

问题根源在于 FAB 组件的 ScrollController 绑定机制:

  • 使用全局 Provider 模式管理 ScrollController 存在时机问题
  • ScrollController 的异步设置和 Consumer 重建存在竞态条件
  • 滚动监听器在某些场景下未能正确绑定

影响范围

  • 所有书签列表页面的用户体验
  • FAB 功能的一致性和可靠性

标签

  • bug
  • ui
  • user-experience

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions