fix: 按原型图精确换��所有尺寸(120dpi, 1dp=0.75px)

主页:时钟69sp, 日期20sp, 卡片数字43sp, 标签16sp
设置页:头像59dp/27sp, 姓名20sp, 手机号15sp, 信息行17sp
SafeArea: 21dp/27dp, 状态栏24dp
卡片圆角19dp, 内边距19/16dp
指示器: 圆点7dp, 活动19dp

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
dongliang
2026-04-27 19:32:15 +09:30
parent fdc2eaa5c9
commit 170e2a527e
6 changed files with 82 additions and 80 deletions

View File

@@ -1,20 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 设置页ViewPager2 Page 0:状态栏 + 用户信息 + 设备信息 + 手表信息入口 -->
<!-- 设置页ViewPager2 Page 0
屏幕密度 120dpi, 1dp=0.75px, 换算: px/0.75=dp -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:orientation="vertical"
android:paddingStart="@dimen/safe_area_left"
android:paddingTop="@dimen/safe_area_top"
android:paddingEnd="@dimen/safe_area_right"
android:paddingBottom="@dimen/safe_area_bottom">
android:paddingStart="21dp"
android:paddingTop="27dp"
android:paddingEnd="21dp"
android:paddingBottom="27dp">
<!-- 自定义状态栏 -->
<!-- 状态栏 18px → 24dp -->
<com.xiaoqu.watch.ui.widget.StatusBarView
android:id="@+id/statusBar"
android:layout_width="match_parent"
android:layout_height="18dp" />
android:layout_height="24dp" />
<!-- 可滚动内容区 -->
<ScrollView
@@ -28,21 +29,21 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- 用户信息区域(居中,可点击触发调试模式) -->
<!-- 用户信息区域 -->
<LinearLayout
android:id="@+id/userBlock"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
android:paddingTop="8dp"
android:paddingBottom="10dp">
android:paddingTop="11dp"
android:paddingBottom="16dp">
<!-- 圆形头像(渐变背景 + 首字母) -->
<!-- 头像 44px → 59dp, 字母 20px → 27sp -->
<FrameLayout
android:layout_width="44dp"
android:layout_height="44dp"
android:layout_marginBottom="6dp">
android:layout_width="59dp"
android:layout_height="59dp"
android:layout_marginBottom="11dp">
<View
android:layout_width="match_parent"
@@ -55,12 +56,12 @@
android:layout_height="match_parent"
android:gravity="center"
android:textColor="@color/text_primary"
android:textSize="20sp"
android:textSize="27sp"
android:textStyle="bold" />
</FrameLayout>
<!-- 姓名 -->
<!-- 姓名 15px → 20sp -->
<TextView
android:id="@+id/tvUserName"
android:layout_width="wrap_content"
@@ -69,42 +70,38 @@
android:textSize="20sp"
android:textStyle="bold" />
<!-- 手机号(脱敏) -->
<!-- 手机号 11px → 15sp -->
<TextView
android:id="@+id/tvUserPhone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/text_secondary"
android:textSize="14sp"
android:layout_marginTop="2dp" />
android:textSize="15sp"
android:layout_marginTop="3dp" />
</LinearLayout>
<!-- 设备信息列表 -->
<!-- 设备信息列表 13px → 17sp -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- 设备型号 -->
<LinearLayout style="@style/ConfigRow">
<TextView style="@style/ConfigLabel" android:text="设备型号" />
<TextView android:id="@+id/tvModel" style="@style/ConfigValue" />
</LinearLayout>
<!-- 系统版本 -->
<LinearLayout style="@style/ConfigRow">
<TextView style="@style/ConfigLabel" android:text="系统版本" />
<TextView android:id="@+id/tvOsVersion" style="@style/ConfigValue" />
</LinearLayout>
<!-- IMEI -->
<LinearLayout style="@style/ConfigRow">
<TextView style="@style/ConfigLabel" android:text="IMEI" />
<TextView android:id="@+id/tvImei" style="@style/ConfigValue" />
</LinearLayout>
<!-- App 版本 -->
<LinearLayout style="@style/ConfigRow">
<TextView style="@style/ConfigLabel" android:text="App 版本" />
<TextView android:id="@+id/tvAppVersion" style="@style/ConfigValue" />
@@ -116,24 +113,24 @@
</ScrollView>
<!-- 页面指示器 -->
<!-- 页面指示器 dot 5px→7dp, active 14px→19dp -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingTop="8dp">
android:paddingTop="13dp">
<View
android:id="@+id/indConfig0"
android:layout_width="14dp"
android:layout_height="5dp"
android:layout_marginEnd="5dp"
android:layout_width="19dp"
android:layout_height="7dp"
android:layout_marginEnd="7dp"
android:background="@drawable/indicator_dot_active" />
<View
android:id="@+id/indConfig1"
android:layout_width="5dp"
android:layout_height="5dp"
android:layout_width="7dp"
android:layout_height="7dp"
android:background="@drawable/indicator_dot_inactive" />
</LinearLayout>