From 8375d8b25581086973adb995e2929f4e71002780 Mon Sep 17 00:00:00 2001 From: Zhou Weidong <502333560@qq.com> Date: Thu, 22 Oct 2026 18:31:03 +0800 Subject: [PATCH] =?UTF-8?q?fix(home):=20=E6=94=B6=E7=B4=A7=E5=B0=81?= =?UTF-8?q?=E9=9D=A2=E7=8A=B6=E6=80=81=E8=A7=92=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/PROGRESS.md | 2 +- lib/core/theme/app_dimens.dart | 10 ++++------ lib/core/widgets/drama_cover_badge_ribbon.dart | 7 ++----- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/docs/plans/PROGRESS.md b/docs/plans/PROGRESS.md index 3fefd21..6f90aee 100644 --- a/docs/plans/PROGRESS.md +++ b/docs/plans/PROGRESS.md @@ -1112,7 +1112,7 @@ $ flutter test ## 2026-10-22 首页布局对齐修正 - 一级分类页内切换 6 个列表,未选 18/w400 `#B0B0B0`、选中 20/w700 白字,无下划线;二级 chips 仅精选显示。 -- 四类短剧卡片移除底板/描边,封面统一 8 圆角,网格行距 10、封底到标题 6;热剧/新剧/漫剧角标移至右上角异形丝带。 +- 四类卡片去底板/描边,封面 8 圆角、行距 10、封底标题间距 6;热剧/新剧/漫剧角标为右上角 16 高紧凑异形丝带。 - 标题下方恢复左对齐题材文字,使用 `|` 分隔、灰色小字,与封面状态角标保持独立。 - 首页搜索栏到一级、一级到二级、二级到网格间距为 8/8/10;非精选 tab 直接以 10 衔接网格。 - 播放量回到封面右下角,使用 spark 图标与 12/w400 纯文字、`w` 格式,并加极淡底部渐变;四类列表共用。 diff --git a/lib/core/theme/app_dimens.dart b/lib/core/theme/app_dimens.dart index 1ed7c4e..cec1b67 100644 --- a/lib/core/theme/app_dimens.dart +++ b/lib/core/theme/app_dimens.dart @@ -91,13 +91,11 @@ abstract final class AppDimens { static const double cardPlayCountGap = 2; static const double cardPlayCountBottom = 6; static const double cardPlayCountScrimHeight = 32; - static const double cardGenreRibbonHeight = 20; - static const double cardGenreRibbonRadius = 10; - static const double cardGenreRibbonLeftInset = 8; - static const double cardGenreRibbonMaxWidth = 86; + static const double cardGenreRibbonHeight = 16; + static const double cardGenreRibbonLeftInset = 4; + static const double coverBadgeRibbonHorizontalPadding = 4; static const double cardTagFont = 11; - static const double cardTagHorizontalPadding = 6; - static const double cardBadgeFont = 10; + static const double cardBadgeFont = 9; static const double cardCoverTitleGap = 6; static const double cardTitleTagGap = 6; static const double cardCoverAspectRatio = 5 / 6; diff --git a/lib/core/widgets/drama_cover_badge_ribbon.dart b/lib/core/widgets/drama_cover_badge_ribbon.dart index 95a5048..f69d09f 100644 --- a/lib/core/widgets/drama_cover_badge_ribbon.dart +++ b/lib/core/widgets/drama_cover_badge_ribbon.dart @@ -24,15 +24,12 @@ class DramaCoverBadgeRibbon extends StatelessWidget { key: Key('drama-cover-badge-ribbon-$keyPrefix'), clipper: const _SlantedRibbonClipper(), child: Container( - constraints: const BoxConstraints( - maxWidth: AppDimens.cardGenreRibbonMaxWidth, - ), height: AppDimens.cardGenreRibbonHeight, padding: const EdgeInsets.only( left: - AppDimens.cardTagHorizontalPadding + + AppDimens.coverBadgeRibbonHorizontalPadding + AppDimens.cardGenreRibbonLeftInset, - right: AppDimens.cardTagHorizontalPadding, + right: AppDimens.coverBadgeRibbonHorizontalPadding, ), alignment: Alignment.center, color: color,