SuperAPI AI 工具集

flutter-accessibility

测试与质量

查看项目

更新于 10-16 06:16

技能介绍

用途:审计并改进 Flutter 应用的无障碍性,目标为 WCAG 2.1 AA、完整的 TalkBack(Android)与 VoiceOver(iOS)支持,以及 2 倍文字缩放下仍舒适可用。

工作流程:先梳理应用界面,列出所有屏幕、可交互元素和图片;逐屏对照检查清单审计;按 blocker/high/medium/low 记录发现的问题;结合 ux-mobile-designer 代理实施 UI 修复;在 Android 用 TalkBack、iOS 用 VoiceOver 真机验证;最后写入 docs/quality/accessibility_review.md 记录发现与修复状态。

检查清单覆盖:颜色与对比度(正文≥4.5:1、大文本≥3:1、UI 组件边界≥3:1,信息不单靠颜色传达);触控目标(≥48×48 dp,建议 56×56 dp,相邻间隔≥8 dp,复杂手势提供替代按钮);文本与布局(1.3 倍文字缩放不溢出、使用 TextTheme 相对字号、主内容单轴滚动);屏幕阅读器(图片加 semanticLabel 或 excludeFromSemantics,操作图标加 tooltip 或 Semantics,表单字段加 label,按钮有有意义标签,装饰元素用 ExcludeSemantics,组合元素用 MergeSemantics,自定义交互组件用 Semantics);焦点与导航(焦点顺序符合视觉阅读顺序,弹窗与底部面板正确捕获并归还焦点);错误提示需描述具体问题并通过 Semantics 或 errorText 关联字段。每个屏幕还需为加载、空、错误、成功、离线等状态提供语义支持。

常见修复包括:为无标签 IconButton 添加 tooltip;为图片添加 semanticLabel 或 excludeFromSemantics;用 Flexible/Expanded 解决 1.3 倍溢出;用 SizedBox 包裹扩大点击目标;装饰性图标用 ExcludeSemantics 包裹。

产出物为 docs/quality/accessibility_review.md,记录每屏发现的问题、严重程度与修复状态。可通过 /flutterforge:flutter-accessibility 直接调用。其他细节暂未提供。