Ipad适配问题

This commit is contained in:
吕新雨
2026-03-03 19:55:53 +08:00
parent 0ad21da246
commit d37262876b
20 changed files with 692 additions and 147 deletions

View File

@@ -0,0 +1,151 @@
# iPad Adaptation任务清单
> 说明:本清单由 `plan.md` 拆解,强调“详细、可执行、可验收”。
> 执行规则:完成后将 `- [ ]` 改为 `- [x]`;阻塞项需补充阻塞原因与解除条件。
> 约束:所有 iPad 改动不得影响 iPhone 现有适配。
## 0. 基线与准备
- [ ] **T0-1 建立页面与组件盘点清单**
- 输出:`client/app/` 页面清单 + 关键共享组件清单(含负责人/优先级)
- 验收清单覆盖启动链路、onboarding、home、settings、favorites、modal、not-found
- [ ] **T0-2 建立验收模板(页面级)**
- 输出统一验收模板布局、文案、交互、状态、iPhone 回归、截图)
- 验收:模板可用于每页独立签收
- [x] **T0-3 建立 iPad 适配基线工具函数/约定**
- 内容:统一 `isTablet` 判定、宽度分级560/620/680、容器基线写法
- 验收:至少在 1 个页面实际接入并可复用
## 1. 原生配置修正(黑边先决条件)
- [x] **T1-1 修正 iOS 目标设备族为 iPhone+iPad**
- 文件:`client/ios/client.xcodeproj/project.pbxproj`
- 要求:主 App targetDebug/Release`TARGETED_DEVICE_FAMILY` 包含 `1,2`
- 验收iPad 运行不再是 iPhone 兼容模式
- [x] **T1-2 校验方向策略与产品要求一致(优先竖屏)**
- 文件:`client/app.json``client/ios/client/Info.plist`
- 要求iPad 方向策略与“竖屏优先”一致,不引入系统级黑边
- 验收iPad 竖屏全屏显示稳定
- [ ] **T1-3 设备验证(基础冒烟)**
- 场景iPad 模拟器(至少 11-inch+ iPhone 两档尺寸
- 验收:启动页无系统黑边,应用可正常进入主流程
## 2. 启动链路页面适配(第一批)
- [x] **T2-1 适配 `app/(splash)/splash.tsx`(同意页)**
- 范围:首屏构图、文案可读、底部按钮区、安全区
- 要求iPad 使用独立参数分支iPhone 参数保持不变
- 验收iPad 竖屏无错位、无遮挡iPhone 对比无回归
- [x] **T2-2 适配 `app/index.tsx`(启动分发页)**
- 范围:加载态容器尺寸、跳转前视觉稳定性
- 验收iPad 下不闪烁、不出现异常留边
- [ ] **T2-3 启动链路验收与冻结**
- 输出iPad 改前/改后截图 + iPhone 回归截图
- 验收:产品确认后标记“冻结”,不再改动本批页面
## 3. Onboarding 全流程适配(第二批)
- [x] **T3-1 适配 `components/onboarding/OnboardingLayout.tsx`**
- 范围:标题区、进度区、内容最大宽度、顶部操作区
- 验收iPad 竖屏布局层级清晰,交互区域可达
- [x] **T3-2 适配 `components/onboarding/NameInputStep.tsx`**
- 范围:输入卡片宽度、键盘抬升、底部按钮区
- 验收iPad 输入过程不卡位、不遮挡按钮
- [x] **T3-3 适配 `components/onboarding/SelectionStep.tsx`**
- 范围:选项卡宽度/间距、滚动区底部留白、底部按钮区
- 验收:末项可见且不被按钮覆盖
- [x] **T3-4 适配 `components/onboarding/ReminderStep.tsx`**
- 范围:数字区比例、加减按钮间距、完成按钮区域
- 验收iPad 读数清晰,触控误触率低
- [x] **T3-5 适配 `app/(onboarding)/onboarding.tsx`(流程壳)**
- 范围步骤切换稳定性、loading 态布局一致性
- 验收:全流程在 iPad 竖屏可连续通过
- [ ] **T3-6 Onboarding 批次验收与冻结**
- 输出:逐页截图 + 关键交互录屏(可选) + iPhone 回归截图
- 验收:确认后冻结本批页面
## 4. 主应用页面适配(第三批)
- [x] **T4-1 适配 `app/(app)/home.tsx`**
- 范围:卡片区、顶部入口、底部操作、空/加载状态
- 验收iPad 信息层级清晰,无文本溢出
- [ ] **T4-2 适配 Home 相关弹层组件**
- 范围:`components/home/` 下弹层、设置卡片、协议入口弹窗
- 验收:弹层在 iPad 下尺寸与点击区合理
- [ ] **T4-3 适配收藏/设置相关页面与入口**
- 范围Favorites、Settings 及关联子组件
- 验收:列表与信息卡在 iPad 下无拥挤/空旷失衡
- [ ] **T4-4 主应用批次验收与冻结**
- 输出:关键页面截图 + 回归记录
- 验收:产品确认后冻结
## 5. 边缘页面与通用组件适配(第四批)
- [x] **T5-1 适配边缘路由页面**
- 范围:`modal``+not-found`、其他辅助页
- 验收iPad 下无明显样式异常
- [ ] **T5-2 清理固定像素高风险点**
- 范围:扫描固定宽高/绝对定位集中区域,替换为分支参数
- 验收:高风险点清单完成闭环
- [ ] **T5-3 通用组件收口**
- 范围:复用组件(如 Sheet、按钮、卡片容器统一 iPad 参数
- 验收:跨页面表现一致
## 6. iOS Widget iPad 适配
- [ ] **T6-1 盘点 Widget 展示尺寸与当前问题**
- 范围Small/Medium/Large 在 iPad 下的展示差异
- 验收:输出问题矩阵(文字溢出/留白/层级)
- [ ] **T6-2 调整 Widget 排版参数**
- 范围:边距、字号、行高、文本截断策略
- 验收:各尺寸均无溢出、无遮挡、层级清晰
- [ ] **T6-3 多语言长文案回归**
- 范围:至少 TC/EN 长短文案样本
- 验收:不同语言下展示稳定
- [ ] **T6-4 Widget 验收截图归档**
- 输出:各尺寸截图(浅色模式必选)
- 验收:可用于最终发布验收材料
## 7. 全量回归与发布前验收
- [ ] **T7-1 iPad 全页面走查**
- 范围:按页面清单逐项验证布局/交互/状态
- 验收:无 P0/P1 视觉与交互问题
- [ ] **T7-2 iPhone 零回归冒烟**
- 范围启动、onboarding、home、settings、favorites、关键弹层
- 验收:关键路径行为与样式无回归
- [ ] **T7-3 输出最终覆盖矩阵与验收记录**
- 输出:页面覆盖表、问题清单、处理结论、剩余风险
- 验收:可直接作为发布前审阅材料
## 8. 收尾与文档同步(全部完成后执行)
- [ ] **T8-1 更新 `spec_kit/overview.md` 对应条目**
- 要求:新增 `iPad Adaptation` 小节,记录目标、范围、阶段产物、完成状态
- 验收:`overview.md` 可一眼看出该需求“任务已全部执行完毕”
- [ ] **T8-2 标记本文件完成状态**
- 要求:`task.md` 全部条目改为 `[x]`,并在文件顶部补“已完成日期/负责人”
- 验收:任务清单闭环