From aafd83b130862f50c03783090721cd41095ef566 Mon Sep 17 00:00:00 2001 From: laoyang Date: Thu, 5 Nov 2026 13:25:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=82=AC=E6=B5=AE=E6=A0=8F=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E5=BA=95=E5=9C=86=E8=A7=92=EF=BC=9A999=20->=2012=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E5=86=8D=E9=82=A3=E4=B9=88=E5=9C=86=E9=BC=93=20(#58)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 用户 2026-11-05:「颜色我感觉透明度什么的还是可以的,但是这个圆有点太圆了, 应该弄成更椭圆一点,效果可能是不是更好啊?」 borderRadius(999) 会把 40 高的块钳成两端完整半圆,看着很圆鼓。 改成 12:圆角半径只占高度的 30%,是"柔和的圆角矩形", 视觉更平更舒展,也与 dock 外框的大圆角(28)形成内外层次。 ArkUI 的 borderRadius 是等比圆角(四角半径相同、正圆圆弧), 没有"椭圆角"(x/y 半径不同)的写法 —— 所以"更椭圆"只能靠减小半径近似, 半径越小圆弧越平。 实机偏圆就降到 10,偏方就加到 14,改动只有这一个数字。 --- entry/src/main/ets/components/FloatDock.ets | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/entry/src/main/ets/components/FloatDock.ets b/entry/src/main/ets/components/FloatDock.ets index 95e1393..7083419 100644 --- a/entry/src/main/ets/components/FloatDock.ets +++ b/entry/src/main/ets/components/FloatDock.ets @@ -355,11 +355,20 @@ export struct FbDockItem { ⚠️ 内边距让椭圆包住图标+文字,但不撑满整格: 左右 10 保证「日程」这种两字标签也留出呼吸; 上下 3 不把胶囊撑得太胖(dock 总高只有 56)。 - ⚠️ `borderRadius(999)` = 全圆角 ⇒ 椭圆。别用固定值(如 20), - 那样标签变长时圆角比例会失调。 */ + ⚠️ 圆角用 **12** 而不是 999(全圆角)—— + 用户 2026-11-05 反馈:「这个圆有点太圆了,应该弄成更椭圆一点」。 + 999 会把 40 高的块钳成两端**完整半圆**,看着很圆鼓; + 12 让圆角半径只占高度的 30%,是"柔和的圆角矩形", + 视觉更平、更舒展,也与 dock 外框的大圆角(28)形成内外层次。 + + ⚠️ ArkUI 的 borderRadius 是**等比圆角**(四角半径相同、正圆圆弧), + 没有"椭圆角"(x/y 半径不同)的写法。所以"更椭圆"只能靠 + **减小半径**来近似 —— 半径越小圆弧越平,越接近扁椭圆观感。 + ⚠️ 12 是按文档数值估的。实机偏圆就降到 10,偏方就加到 14, + 改动只有这一个数字。 */ .padding({ left: 10, right: 10, top: 3, bottom: 3 }) .backgroundColor(this.active ? DOCK_PILL_BG : Color.Transparent) - .borderRadius(999) + .borderRadius(12) } .layoutWeight(1) // 等分 .height('100%')