2026-04-27 18:37:06 +09:30
|
|
|
|
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
|
|
<!-- 主页(ViewPager2 Page 1):状态栏 + 时钟 + 日期 + 快捷区 + 指示器
|
2026-04-27 19:17:59 +09:30
|
|
|
|
屏幕 240×284px,用户群体老年人,字体尽可能大 -->
|
2026-04-27 18:37:06 +09:30
|
|
|
|
<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"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:paddingStart="10dp"
|
|
|
|
|
|
android:paddingTop="14dp"
|
|
|
|
|
|
android:paddingEnd="10dp"
|
|
|
|
|
|
android:paddingBottom="10dp">
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
2026-04-27 19:17:59 +09:30
|
|
|
|
<!-- 自定义状态栏 -->
|
2026-04-27 18:37:06 +09:30
|
|
|
|
<com.xiaoqu.watch.ui.widget.StatusBarView
|
|
|
|
|
|
android:id="@+id/statusBar"
|
|
|
|
|
|
android:layout_width="match_parent"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_height="16dp" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<!-- 时钟区域(居中撑满) -->
|
|
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:layout_width="match_parent"
|
|
|
|
|
|
android:layout_height="0dp"
|
|
|
|
|
|
android:layout_weight="1"
|
|
|
|
|
|
android:gravity="center"
|
|
|
|
|
|
android:orientation="vertical">
|
|
|
|
|
|
|
2026-04-27 19:17:59 +09:30
|
|
|
|
<!-- 时钟 HH:mm(原型图 52px,占屏幕 21.7%) -->
|
2026-04-27 18:37:06 +09:30
|
|
|
|
<TextView
|
|
|
|
|
|
android:id="@+id/tvClock"
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="14:30"
|
|
|
|
|
|
android:textColor="@color/text_primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="80sp"
|
|
|
|
|
|
android:fontFamily="sans-serif-light"
|
|
|
|
|
|
android:letterSpacing="0.02"
|
|
|
|
|
|
android:includeFontPadding="false" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
2026-04-27 19:17:59 +09:30
|
|
|
|
<!-- 日期 + 星期(原型图 15px) -->
|
2026-04-27 18:37:06 +09:30
|
|
|
|
<TextView
|
|
|
|
|
|
android:id="@+id/tvDate"
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="4月23日 周三"
|
|
|
|
|
|
android:textColor="@color/text_primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="24sp"
|
|
|
|
|
|
android:layout_marginTop="4dp" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
2026-04-27 19:17:59 +09:30
|
|
|
|
<!-- 快捷区:3 个彩色卡片(原型图 padding 14px,数字 32px,标签 12px) -->
|
2026-04-27 18:37:06 +09:30
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:layout_width="match_parent"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:orientation="horizontal">
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 接单池(蓝色) -->
|
|
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:id="@+id/cardPool"
|
|
|
|
|
|
android:layout_width="0dp"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:layout_weight="1"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_marginEnd="3dp"
|
2026-04-27 18:37:06 +09:30
|
|
|
|
android:background="@drawable/bg_quick_blue"
|
|
|
|
|
|
android:gravity="center"
|
|
|
|
|
|
android:orientation="vertical"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:paddingTop="10dp"
|
|
|
|
|
|
android:paddingBottom="8dp">
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:id="@+id/tvPoolNum"
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="0"
|
|
|
|
|
|
android:textColor="@color/primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="42sp"
|
|
|
|
|
|
android:textStyle="bold"
|
|
|
|
|
|
android:includeFontPadding="false" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="接单池"
|
|
|
|
|
|
android:textColor="@color/text_primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="16sp"
|
2026-04-27 18:37:06 +09:30
|
|
|
|
android:textStyle="bold"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_marginTop="2dp" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 待打卡(橙色) -->
|
|
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:id="@+id/cardPunch"
|
|
|
|
|
|
android:layout_width="0dp"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:layout_weight="1"
|
|
|
|
|
|
android:layout_marginStart="2dp"
|
|
|
|
|
|
android:layout_marginEnd="2dp"
|
|
|
|
|
|
android:background="@drawable/bg_quick_orange"
|
|
|
|
|
|
android:gravity="center"
|
|
|
|
|
|
android:orientation="vertical"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:paddingTop="10dp"
|
|
|
|
|
|
android:paddingBottom="8dp">
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:id="@+id/tvPunchNum"
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="0"
|
|
|
|
|
|
android:textColor="@color/warning"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="42sp"
|
|
|
|
|
|
android:textStyle="bold"
|
|
|
|
|
|
android:includeFontPadding="false" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="待打卡"
|
|
|
|
|
|
android:textColor="@color/text_primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="16sp"
|
2026-04-27 18:37:06 +09:30
|
|
|
|
android:textStyle="bold"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_marginTop="2dp" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 待完成(绿色) -->
|
|
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:id="@+id/cardComplete"
|
|
|
|
|
|
android:layout_width="0dp"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:layout_weight="1"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_marginStart="3dp"
|
2026-04-27 18:37:06 +09:30
|
|
|
|
android:background="@drawable/bg_quick_green"
|
|
|
|
|
|
android:gravity="center"
|
|
|
|
|
|
android:orientation="vertical"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:paddingTop="10dp"
|
|
|
|
|
|
android:paddingBottom="8dp">
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:id="@+id/tvCompleteNum"
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="0"
|
|
|
|
|
|
android:textColor="@color/success"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="42sp"
|
|
|
|
|
|
android:textStyle="bold"
|
|
|
|
|
|
android:includeFontPadding="false" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<TextView
|
|
|
|
|
|
android:layout_width="wrap_content"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:text="待完成"
|
|
|
|
|
|
android:textColor="@color/text_primary"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:textSize="16sp"
|
2026-04-27 18:37:06 +09:30
|
|
|
|
android:textStyle="bold"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:layout_marginTop="2dp" />
|
2026-04-27 18:37:06 +09:30
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
|
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 页面指示器 -->
|
|
|
|
|
|
<LinearLayout
|
|
|
|
|
|
android:layout_width="match_parent"
|
|
|
|
|
|
android:layout_height="wrap_content"
|
|
|
|
|
|
android:gravity="center"
|
2026-04-27 19:17:59 +09:30
|
|
|
|
android:paddingTop="6dp">
|
2026-04-27 18:37:06 +09:30
|
|
|
|
|
|
|
|
|
|
<View
|
|
|
|
|
|
android:id="@+id/indMain0"
|
|
|
|
|
|
android:layout_width="5dp"
|
|
|
|
|
|
android:layout_height="5dp"
|
|
|
|
|
|
android:layout_marginEnd="5dp"
|
|
|
|
|
|
android:background="@drawable/indicator_dot_inactive" />
|
|
|
|
|
|
|
|
|
|
|
|
<View
|
|
|
|
|
|
android:id="@+id/indMain1"
|
|
|
|
|
|
android:layout_width="14dp"
|
|
|
|
|
|
android:layout_height="5dp"
|
|
|
|
|
|
android:background="@drawable/indicator_dot_active" />
|
|
|
|
|
|
|
|
|
|
|
|
</LinearLayout>
|
|
|
|
|
|
|
|
|
|
|
|
</LinearLayout>
|