release(ios): 发布 0.2.1 并重构图标与界面细节

- 应用图标改用与 Web favicon 同源的扁平标记,金色 SIM 卡体加三格递增信号,29pt 下仍可读
- 标签统一为胶囊形状,提高深色主题下的描边权重,避免标签在暗色下消失
- 消息卡片与详情分区卡片收紧行距,单屏信息密度明显提升
- 详情头部指标精简为 4 行,数据模块改为单条读数
- 批量选择勾选框移出名称区域,工具栏控件统一为等高 34pt
- 分组编辑器改为点选即生效,移除说明文字与常驻禁用按钮
This commit is contained in:
chick
2026-09-14 16:30:39 +08:00
parent 27687868ef
commit 3607eddc9f
34 changed files with 2656 additions and 1213 deletions
+37 -19
View File
@@ -1,26 +1,44 @@
<!-- 设计参考稿,构图与 Design/generate_app_icon.swift 一致;构建实际用 Swift 脚本光栅化 1024 PNG。 -->
<svg xmlns="http://www.w3.org/2000/svg" width="1024" height="1024" viewBox="0 0 1024 1024">
<defs>
<linearGradient id="gold" x1="0.18" y1="0.04" x2="0.82" y2="0.96">
<stop offset="0" stop-color="#FFE9B0"/>
<stop offset="0.24" stop-color="#F4C767"/>
<stop offset="0.68" stop-color="#DA9F45"/>
<stop offset="1" stop-color="#B77B2D"/>
<linearGradient id="field" x1="0.10" y1="0" x2="0.92" y2="1">
<stop offset="0" stop-color="#1C4280"/>
<stop offset="0.46" stop-color="#0D2450"/>
<stop offset="1" stop-color="#040B1B"/>
</linearGradient>
<linearGradient id="sheen" x1="0.18" y1="0" x2="0.82" y2="0.88">
<stop offset="0" stop-color="#FFFFFF" stop-opacity="0.24"/>
<stop offset="0.52" stop-color="#FFFFFF" stop-opacity="0.04"/>
<stop offset="1" stop-color="#FFFFFF" stop-opacity="0"/>
<radialGradient id="key" cx="0.26" cy="-0.04" r="0.92">
<stop offset="0" stop-color="#96C4FF" stop-opacity="0.25"/>
<stop offset="0.55" stop-color="#70A2E6" stop-opacity="0.08"/>
<stop offset="1" stop-color="#70A2E6" stop-opacity="0"/>
</radialGradient>
<radialGradient id="vig" cx="0.5" cy="0.52" r="0.78">
<stop offset="0.55" stop-color="#020712" stop-opacity="0"/>
<stop offset="1" stop-color="#020712" stop-opacity="0.59"/>
</radialGradient>
<linearGradient id="gold" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#FFF4CD"/>
<stop offset="0.30" stop-color="#FACE6A"/>
<stop offset="0.62" stop-color="#D69628"/>
<stop offset="1" stop-color="#925C10"/>
</linearGradient>
<linearGradient id="bar" x1="0" y1="0" x2="0" y2="1">
<stop offset="0" stop-color="#2A2F37"/>
<stop offset="1" stop-color="#111419"/>
<linearGradient id="slot" x1="0" y1="0" x2="0" y2="1">
<stop offset="0" stop-color="#050D1E"/>
<stop offset="0.58" stop-color="#091732"/>
<stop offset="1" stop-color="#112649"/>
</linearGradient>
</defs>
<rect width="1024" height="1024" fill="url(#gold)"/>
<rect width="1024" height="1024" fill="url(#sheen)"/>
<g fill="url(#bar)">
<rect x="317" y="602" width="108" height="188" rx="54"/>
<rect x="458" y="475" width="108" height="315" rx="54"/>
<rect x="599" y="348" width="108" height="442" rx="54"/>
</g>
<rect width="1024" height="1024" fill="url(#field)"/>
<rect width="1024" height="1024" fill="url(#key)"/>
<rect width="1024" height="1024" fill="url(#vig)"/>
<!-- SIM 卡体:左上切角,其余三角大圆角 -->
<path d="M494.5,218 L688,218 Q822,218 822,352 L822,704 Q822,838 688,838 L336,838
Q202,838 202,704 L202,510.5 Q202,420 266,356 L340,282 Q404,218 494.5,218 Z"
fill="url(#gold)"/>
<!-- 三格信号:底边对齐,右高,读作多卡队列健康度 -->
<rect x="318" y="546" width="88" height="142" rx="26" fill="url(#slot)"/>
<rect x="468" y="446" width="88" height="242" rx="26" fill="url(#slot)"/>
<rect x="618" y="346" width="88" height="342" rx="26" fill="url(#slot)"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB