Skip to content

fix(TSlider): 修复滑块端点对齐与受限尺寸交互 - #1212

Merged
RSS1102 merged 10 commits into
Tencent:developfrom
runoob-coder:fix/slider-capsule-thumb-travel
Oct 27, 2026
Merged

RSS1102 merged 10 commits into
Tencent:developfrom
runoob-coder:fix/slider-capsule-thumb-travel

Conversation

@runoob-coder

@runoob-coder runoob-coder commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

🤔 这个 PR 的性质是?

勾选规则:
1.只要有新增参数,就勾选”新特性提交“
2.只修改内部bug,未新增参数,才勾选”日常 bug 修复“
3.其他选项视具体改动判断

  • 日常 bug 修复
  • 新特性提交
  • 文档改进
  • 演示代码改进
  • 组件样式/交互改进
  • CI/CD 改进
  • 重构
  • 代码风格优化
  • 测试用例
  • 分支合并
  • 其他

🔗 相关 Issue

#755

原问题截图:

修复前的滑块问题

💡 需求背景和解决方案

问题与修复

  • 修复普通和胶囊滑块的端点、数值与刻度对齐,以及受限尺寸、持续拖动和布局变化时的交互;统一轨道、thumb 和输入的几何计算。
  • 垂直示例保留完整可见轨道长度;胶囊默认沿行程两端各留 3px,横截面两侧各留 2px。
  • 不新增公开 API。离散值的 formatter 和默认标签继续使用业务传入的受控值;连续双游标在空间允许时保留 8px 最小中心距。靠近取值边界无法容纳该间距时按实际空间约束,避免越界回调。

运行截图(Flutter 3.32.0 Linux,经过精确 Golden 比较)

端点矩阵:覆盖水平、垂直,普通、胶囊及 0/100 两端。

端点矩阵浅色
端点矩阵深色

边界矩阵:覆盖窄尺寸、RTL 和大厚度主题。

边界矩阵浅色
边界矩阵深色

本地验证

  • Flutter 3.32.0 与 3.47.8:各 88 项 Slider 组件和 17 项 Demo 功能回归、组件严格分析通过。
  • Flutter 3.32.0 Linux:6 张 Demo 和 1 张组件 Golden 精确比较通过;合入远端更新后复跑 88 项组件回归和 6 张 Demo Golden 通过。
  • Slider 公开声明与包导出对照 develop 无变化。最终 head 的远端 CI 以检查结果为准;全项目覆盖率及生成产物未对本轮候选重复执行。

📝 更新日志

  • fix(TSlider): 修复滑块端点、数值和刻度的位置不对齐。

  • fix(TSlider): 修复受限尺寸及布局变化时滑块拖动异常。

  • 本条 PR 不需要纳入 Changelog

☑️ 请求合并前的自查清单

⚠️ 请自检并全部勾选全部选项。⚠️

  • 标题遵循 Conventional Commits 格式:type(<scope>?): 修改描述。
    示例:fix(TBottomTabBar): 修复 iconText 模式底部溢出
  • “相关 Issue”处带上修复的 Issue 链接或无关联 Issue
  • 已添加对应的 Spec 链接,或已由 Review 确认本次改动无需 Spec
    Slider Spec
  • 相关文档已补充或无须补充

- 胶囊坐标轨道收进 thumb 行程并关闭 Material 二次内缩,连续与离散取值共用同一映射,消除两端「数值在变、thumb 不动」的死区
- thumb 与胶囊四周留白一致,等于轨道高度与 thumb 直径差值的一半
- 示例页垂直滑块的数值与刻度改用真实 thumb 行程定位,不再与 thumb 错位
- TSliderVariant 说明改为中文表述
- 示例 Widget 不再自绘标题,改由 ExampleItem.desc 提供,与「组件类型」区块结构一致
- 保留 surface 卡片与原有 contentSpacing 配置
- demo 测试的 surface 定位改用滑块 key,并断言标题位于示例内容上方
@runoob-coder
runoob-coder force-pushed the fix/slider-capsule-thumb-travel branch from 537867b to d0869a6 Compare October 26, 2026 17:53
@RSS1102 RSS1102 changed the title fix(TSlider): 修复胶囊滑块 thumb 行程与数值对齐 fix(TSlider): 修复滑块端点对齐与受限尺寸交互 Oct 27, 2026
@github-actions

Copy link
Copy Markdown
Contributor

完成

Web Demo

APK 下载

@RSS1102
RSS1102 merged commit aac11d6 into Tencent:develop Oct 27, 2026
28 checks passed
@tdesign-bot tdesign-bot mentioned this pull request Oct 28, 2026
6 of 16 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants