diff --git a/client/lib/screens/account_page.dart b/client/lib/screens/account_page.dart index fc365d2..7ad6188 100644 --- a/client/lib/screens/account_page.dart +++ b/client/lib/screens/account_page.dart @@ -63,6 +63,8 @@ class AccountPage extends ConsumerWidget { _Card(children: [ _NavRow(icon: PangolinIcons.monitorSmartphone, title: t.myDevices, onTap: () => open(NavView.devices, DevicesScreen(t: t))), Divider(height: 1, color: c.border), + _NavRow(icon: PangolinIcons.settings, title: t.settingsTitle, onTap: () => open(NavView.settings, SettingsScreen(t: t))), + Divider(height: 1, color: c.border), _NavRow(icon: PangolinIcons.shoppingBag, title: t.redeemEntry, onTap: () => open(NavView.redeem, RedeemScreen(t: t))), Divider(height: 1, color: c.border), _NavRow(icon: PangolinIcons.messageCircle, title: t.contactEntry, onTap: () => open(NavView.contact, ContactScreen(t: t))), diff --git a/client/lib/widgets/account_screens.dart b/client/lib/widgets/account_screens.dart index c5b3903..69de294 100644 --- a/client/lib/widgets/account_screens.dart +++ b/client/lib/widgets/account_screens.dart @@ -10,6 +10,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; import '../l10n/app_text.dart'; import '../models/device.dart'; import '../pangolin_theme.dart'; +import '../screens/settings_page.dart'; import '../services/device_identity.dart'; import 'adaptive_menu.dart'; import 'pangolin_field.dart'; @@ -52,6 +53,18 @@ class _SubScaffold extends StatelessWidget { } } +/// ── 设置(移动端从「我的」下钻)── 复用桌面 SettingsPage 内容,套移动返回栏。 +class SettingsScreen extends StatelessWidget { + const SettingsScreen({super.key, required this.t, this.onBack}); + final AppText t; + final VoidCallback? onBack; + + @override + Widget build(BuildContext context) { + return _SubScaffold(title: t.settingsTitle, onBack: onBack, child: const SettingsPage()); + } +} + /// ── 套餐选择 ── (价格/额度来自 GET /v1/plans;当前档由 me.plan 判定; /// 功能清单仍取 l10n,后端无此字段) class PlansScreen extends ConsumerWidget {