2025-07-11 11:03:21 +08:00
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
import 'package:qhd_prevention/pages/login_page.dart';
|
2025-07-14 18:01:16 +08:00
|
|
|
import 'package:qhd_prevention/pages/mine/mine_first_sign_page.dart';
|
2025-07-11 11:03:21 +08:00
|
|
|
import 'package:qhd_prevention/pages/mine/mine_set_pwd_page.dart';
|
2025-07-14 18:01:16 +08:00
|
|
|
import 'package:qhd_prevention/pages/mine/mine_sign_page.dart';
|
2025-07-11 11:03:21 +08:00
|
|
|
import 'package:qhd_prevention/pages/my_appbar.dart';
|
|
|
|
import 'package:qhd_prevention/tools/h_colors.dart';
|
|
|
|
import 'package:shared_preferences/shared_preferences.dart';
|
|
|
|
|
|
|
|
import '../../tools/tools.dart';
|
|
|
|
|
|
|
|
class MineSetPage extends StatelessWidget {
|
|
|
|
const MineSetPage({super.key});
|
|
|
|
|
|
|
|
Future<void> _clearUserSession() async {
|
|
|
|
final prefs = await SharedPreferences.getInstance();
|
|
|
|
await prefs.remove('isLoggedIn'); // 清除登录状态
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
return Scaffold(
|
|
|
|
appBar: MyAppbar(title: "设置"),
|
|
|
|
backgroundColor: h_backGroundColor(),
|
|
|
|
body: Column(
|
|
|
|
children: [
|
|
|
|
GestureDetector(
|
|
|
|
child: _setItemWidget("修改密码"),
|
|
|
|
onTap: () {
|
|
|
|
pushPage(MineSetPwdPage(), context);
|
|
|
|
},
|
|
|
|
),
|
|
|
|
|
2025-07-14 18:01:16 +08:00
|
|
|
Divider(height: 1, color: Colors.black12),
|
|
|
|
GestureDetector(
|
|
|
|
child: _setItemWidget("更新签字信息"),
|
|
|
|
onTap: () {
|
|
|
|
pushPage(FirstSignPage(), context);
|
|
|
|
// pushPage(MineSignPage(), context);
|
|
|
|
}
|
|
|
|
),
|
|
|
|
|
2025-07-11 11:03:21 +08:00
|
|
|
Divider(height: 1, color: Colors.black12),
|
|
|
|
GestureDetector(child: _setItemWidget("检查更新"), onTap: () {}),
|
|
|
|
|
|
|
|
SizedBox(height: 15),
|
|
|
|
|
|
|
|
GestureDetector(
|
|
|
|
child: Container(
|
|
|
|
padding: EdgeInsets.symmetric(vertical: 15),
|
|
|
|
color: Colors.white,
|
|
|
|
child: Center(child: Text("退出当前账户", style: TextStyle(fontSize: 16),)),
|
|
|
|
),
|
|
|
|
onTap: () async {
|
|
|
|
// 显示确认对话框
|
|
|
|
bool? confirm = await showDialog(
|
|
|
|
context: context,
|
|
|
|
builder: (context) => AlertDialog(
|
|
|
|
title: Text("确认退出"),
|
|
|
|
content: Text("确定要退出当前账号吗?"),
|
|
|
|
actions: [
|
|
|
|
TextButton(
|
|
|
|
onPressed: () => Navigator.pop(context, false),
|
|
|
|
child: Text("取消"),
|
|
|
|
),
|
|
|
|
TextButton(
|
|
|
|
onPressed: () => Navigator.pop(context, true),
|
|
|
|
child: Text("确定", style: TextStyle(color: Colors.red)),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
);
|
|
|
|
|
|
|
|
if (confirm == true) {
|
|
|
|
// 清除用户登录状态
|
|
|
|
await _clearUserSession();
|
|
|
|
|
|
|
|
// 跳转到登录页并清除所有历史路由
|
|
|
|
Navigator.pushAndRemoveUntil(
|
|
|
|
context,
|
|
|
|
MaterialPageRoute(builder: (context) => LoginPage()),
|
|
|
|
(Route<dynamic> route) => false, // 移除所有历史路由
|
|
|
|
);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
Widget _setItemWidget(final String text) {
|
|
|
|
return Container(
|
|
|
|
height: 55,
|
|
|
|
color: Colors.white,
|
|
|
|
child: Padding(
|
|
|
|
padding: EdgeInsets.all(15),
|
|
|
|
child: Row(
|
|
|
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
children: [
|
|
|
|
Text(text, style: TextStyle(fontSize: 16)),
|
|
|
|
Icon(Icons.chevron_right),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|