diff --git a/lib/routes/user_routes.dart b/lib/routes/user_routes.dart index f6d5f9d..e431393 100644 --- a/lib/routes/user_routes.dart +++ b/lib/routes/user_routes.dart @@ -8,7 +8,9 @@ import 'package:chat/views/user/serve/index_page.dart'; import 'package:chat/views/user/setting/about/index_page.dart'; import 'package:chat/views/user/setting/index_page.dart'; import 'package:chat/views/user/setting/privacy/index_page.dart'; +import 'package:chat/views/user/setting/safe/email_page.dart'; import 'package:chat/views/user/setting/safe/index_page.dart'; +import 'package:chat/views/user/setting/safe/mobile_page.dart'; import 'package:chat/views/user/setting/sugguest/index_page.dart'; import 'package:chat/views/user/share/index_page.dart'; import 'package:get/get.dart'; @@ -22,6 +24,8 @@ abstract class UserRoutes { static const String settingPrivacy = '/user/setting/privacy'; static const String settingAbout = '/user/setting/about'; static const String settingSafe = '/user/setting/safe'; + static const String settingSafeEmail = '/user/setting/safe/email'; + static const String settingSafeMobile = '/user/setting/safe/mobile'; static const String settingSugguest = '/user/setting/sugguest'; static const String share = '/user/share'; @@ -62,6 +66,16 @@ abstract class UserRoutes { GetPage( name: '/safe', page: () => const UserSettingSafePage(), + children: [ + GetPage( + name: '/email', + page: () => const UserSettingSafeEmailPage(), + ), + GetPage( + name: '/mobile', + page: () => const UserSettingSafeMobilePage(), + ), + ], ), GetPage( name: '/sugguest', diff --git a/lib/views/user/setting/safe/email_page.dart b/lib/views/user/setting/safe/email_page.dart new file mode 100644 index 0000000..6971b89 --- /dev/null +++ b/lib/views/user/setting/safe/email_page.dart @@ -0,0 +1,15 @@ +import 'package:flutter/material.dart'; + +class UserSettingSafeEmailPage extends StatelessWidget { + const UserSettingSafeEmailPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('绑定邮箱'), + ), + body: Container(), + ); + } +} diff --git a/lib/views/user/setting/safe/index_page.dart b/lib/views/user/setting/safe/index_page.dart index d7a55a2..e4ed494 100644 --- a/lib/views/user/setting/safe/index_page.dart +++ b/lib/views/user/setting/safe/index_page.dart @@ -1,4 +1,5 @@ import 'package:chat/configs/app_colors.dart'; +import 'package:chat/routes/user_routes.dart'; import 'package:chat/services/auth_service.dart'; import 'package:chat/utils/ui_tools.dart'; import 'package:chat/views/home/widgets/action_item.dart'; @@ -26,61 +27,70 @@ class _UserSettingSafePageState extends State { '导出助记词', isFirst: true, isLast: true, - onTap: () { - showModalBottomSheet( - context: context, - isScrollControlled: true, - backgroundColor: AppColors.white, - shape: const RoundedRectangleBorder( - borderRadius: BorderRadius.vertical(top: Radius.circular(8)), - ), - builder: (context) { - return Column( - mainAxisSize: MainAxisSize.min, - children: [ - const SizedBox(height: 16), - const Text('您的助记词'), - Container( - padding: const EdgeInsets.all(32), - child: Text( - AuthService.to.mnemonic, - style: const TextStyle( - fontSize: 18, - ), - ), - ), - ElevatedButton( - onPressed: () { - Clipboard.setData( - ClipboardData( - text: AuthService.to.mnemonic, - ), - ); - UiTools.toast('复制成功'); - Get.back(); - }, - child: const Text('复制'), - ), - const SizedBox(height: 16), - ], - ); - }, - ); - }, + onTap: _showMnemonic, ), const SizedBox(height: 8), ActionItem( '绑定手机', isFirst: true, - onTap: () {}, + onTap: () { + Get.toNamed(UserRoutes.settingSafeMobile); + }, ), ActionItem( '绑定邮箱', isLast: true, - onTap: () {}, + onTap: () { + Get.toNamed(UserRoutes.settingSafeEmail); + }, ), ], ), ); } + + void _showMnemonic() { + showModalBottomSheet( + context: context, + isScrollControlled: true, + backgroundColor: AppColors.white, + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.vertical(top: Radius.circular(8)), + ), + builder: (context) { + return Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox(height: 16), + const Text('您的助记词'), + Container( + padding: const EdgeInsets.all(32), + child: Text( + AuthService.to.mnemonic, + style: const TextStyle( + fontSize: 20, + fontWeight: FontWeight.w500, + wordSpacing: 6, + height: 2, + ), + ), + ), + ElevatedButton( + onPressed: () { + Clipboard.setData( + ClipboardData( + text: AuthService.to.mnemonic, + ), + ); + UiTools.toast('复制成功'); + Get.back(); + }, + child: const Text('复制'), + ), + const SizedBox(height: 16), + ], + ); + }, + ); + } } diff --git a/lib/views/user/setting/safe/mobile_page.dart b/lib/views/user/setting/safe/mobile_page.dart new file mode 100644 index 0000000..08c7190 --- /dev/null +++ b/lib/views/user/setting/safe/mobile_page.dart @@ -0,0 +1,15 @@ +import 'package:flutter/material.dart'; + +class UserSettingSafeMobilePage extends StatelessWidget { + const UserSettingSafeMobilePage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('绑定手机'), + ), + body: Container(), + ); + } +}