用户目标
- 作为 TagLauncher 的 UI 设计师 2,基于
Docs/X-01产品文档/2026-06-25-PRD-免费版与Pro解锁.md 与现有 macOS App 风格,提出另一套同样可落地但风格上略有取舍的产品内 UI 方案。
- 本轮只讨论产品内 UI,不改代码,不讨论营销页。
- 重点覆盖:
- 设置页 Data / Theme 区域里的 Pro 状态区
- Pro 功能入口的轻量标识
- 免费用户触发 Pro 功能时的提示弹窗
- Pro 主题卡片在免费预览态与已解锁态的视觉差异
已完成事项
- 读取并遵守:
~/.codex/rules/pre-implementation-discussion.md
~/.codex/rules/session-memory.md
- 项目入口
AGENTS.md
- 项目本地
CODE_GOVERNANCE.md
- 指定技能
design-taste-frontend
- 阅读 PRD:
Docs/X-01产品文档/2026-06-25-PRD-免费版与Pro解锁.md
- 阅读现有设置页与主题相关实现:
src/Apptag/PreferencesView.swift
src/Apptag/AppGridTheme.swift
src/Apptag/EditModeViews.swift
- 查看现有设置页截图与视觉证据,确认当前 UI 基调是原生 macOS 偏好设置风格,而非营销式权益卡。
关键决策
- 本轮推荐的备选方向是“原生设置条 + 就地提示”,不是“权益大卡 + 全局锁态”。
- 方案采用“一主一辅”结构:
Data 顶部放唯一的完整 Pro 状态区,承载权益摘要、价格、解锁与恢复购买。
Theme 顶部放紧凑镜像状态条,只解释主题相关规则和入口,不重复完整权益列表。
- 更低风险的最简方案仍然存在:
- 只在
Data 顶部放 Pro 状态区,Theme 只保留一句说明。
- 本轮不作为主推,因为主题侧理解成本会更高。
- 不建议使用“V 锁”或 icon-only 锁标作为长期标识。
- 长期标识应统一为小型
Pro 文本胶囊。
- 真正的锁图标只保留在被拦截当下的弹窗标题或局部说明里。
- 主题卡片不应做灰化、模糊、黑纱遮罩。
- 免费用户可预览的 Pro 主题应保持完整色彩,只通过
Pro 胶囊、计时 chip、选中态差异来表达状态。
- 主题点击的首次体验不应直接弹付费窗。
- Pro 主题首击进入 5 分钟预览,预览条中再给“解锁 Pro”入口。
- 导入导出、备注额度满、排序保存等无预览场景才使用轻量弹窗。
- 付费提示不走“错误/告警”视觉语言。
- Settings 内使用白底原生 sheet 风格。
- App Grid 内使用现有深色提醒泡泡家族,但内容更轻。
文件变更
- 新增会话记录:
.codex-sessionhistory/2026-06-26-Pro界面方案-01.md
未决问题
- 产品仍需最终冻结:
Theme 是否保留镜像状态条,还是只做 Data 单区。
- 若后续实现排序 Pro 门禁,现有“拖拽即保存”链路是否要先补一个明确“保存排序”动作,仍需产品和研发一起定。
后续建议
- 若进入实现,先冻结一个统一的
Pro entitlement 只读状态模型,再分别落到:
Data 完整状态区
Theme 镜像状态条
- 统一 Pro 胶囊组件
- 统一 Pro 轻量弹窗内容模型
- QA 先锁以下矩阵:
- 免费 / Pro / 老付费自动 Pro / 处理中 / 取消 / 失败 / 无可恢复购买
- 29 语种按钮长度与说明换行
- 深浅主题与高对比度
- 主题预览计时、结束回退、解锁后状态切换