From 01911016d2f7e84ff9d23d55da2a42a52a598ee8 Mon Sep 17 00:00:00 2001 From: Zhou Weidong <502333560@qq.com> Date: Mon, 19 Oct 2026 18:08:07 +0800 Subject: [PATCH] =?UTF-8?q?docs(plans):=20=E4=B8=8B=E5=8F=91=20K27.12=20?= =?UTF-8?q?=E5=8F=91=E7=8E=B0=E9=A1=B5=E7=80=91=E5=B8=83=E6=B5=81=E4=B8=8E?= =?UTF-8?q?=E4=B8=8B=E6=8B=89=E5=88=B7=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/INBOX.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/docs/plans/INBOX.md b/docs/plans/INBOX.md index 530d53f..2693ee7 100644 --- a/docs/plans/INBOX.md +++ b/docs/plans/INBOX.md @@ -20,6 +20,33 @@ --- +## [待处理] 2026-10-19 | K27.12 发现页封面按原图比例铺满 + 下拉刷新 + +**用户指令(2026-10-19,原文)**: +> 「不是这样 根据封面尺寸全遮住啊 然后发现页加一个下拉刷新」 + +**口径** +1. 封面按原图比例铺满(K27.10 的 `contain` 留白不算): + - 现有封面源图比例不一(约 1220×2712、1520×2720、1080×1413),固定 120 高无法既铺满又不裁剪。 + - 改为**两列瀑布流**:每张卡宽度固定为列宽,封面高度由图片原始宽高比决定(`fitWidth`,不裁剪、不留黑边),剧名/题材仍在封面下方。 + - 封面加载中/失败用 3:4 占位,避免高度为 0;「免费」角标仍叠加在封面左上角;封面不再叠加剧名与渐变。 + - 保留 `home-all-dramas-section` / `home-all-dramas-grid` / `home-drama-card-` / `home-drama-cover-` 等既有 Key 语义(容器 Key 不变)。 + - 两列分配按奇偶分列实现(无第三方依赖);列间距 10、页面左右 14、卡片间距 10 不变。 +2. 下拉刷新: + - 发现页 `CustomScrollView` 外包 `RefreshIndicator`(`AlwaysScrollableScrollPhysics`),主色指示器。 + - `onRefresh` 同时执行 `categories.load()` 与 `logic.refreshResume()`,完成后收起;失败仍保留现有错误态/空态。 +3. 不改搜索、分类选择、快捷入口与底部导航逻辑。 + +**测试** +1. 封面图片节点不再使用裁剪模式(`fitWidth` 或等比铺满),且没有固定高度导致留白。 +2. 下拉手势触发 `onRefresh`:`CategoryController.load` 与 `refreshResume` 被调用(可用假 repository 统计次数),指示器收起。 +3. 卡片 Key 与点击进入详情行为不变。 +4. 既有测试全过。 + +**流程**:从最新 `develop` 拉 `fix/flutter-discover-masonry-refresh`;门禁 `dart analyze lib test` 零告警 + `flutter test` 全过 + `flutter build apk --debug`;`--no-ff` 合回 develop 并 push;作者 `Zhou Weidong <502333560@qq.com>`;PROGRESS 留痕;真机验收由用户执行。 + +--- + ## [待处理] 2026-10-19 | K27.11 发现页搜索框:点击页面其他区域失焦 **用户指令(2026-10-19,原文)**: