目录:
- 1、实现效果图
- 2、实现流程
- 2.1、引入依赖
- 2.2、封装弹窗工具类
- 2.3、设置页
- 2.4、路由中注册设置页面
1、实现效果图

2、实现流程
2.1、引入依赖

2.2、封装弹窗工具类
import 'package:fluttertoast/fluttertoast.dart';class CommontToast {static showToast(String msg) {Fluttertoast.showToast(msg: msg,toastLength: Toast.LENGTH_SHORT,gravity: ToastGravity.CENTER,timeInSecForIosWeb: 1,fontSize: 16.0);}
}
2.3、设置页
import 'package:flutter/material.dart';
import 'package:flutter_haoke/scopoed_model/auth_model.dart';
import 'package:flutter_haoke/utils/common_toast.dart';
import 'package:flutter_haoke/utils/scopoed_mode_helper.dart';class SettingPage extends StatelessWidget {const SettingPage({Key? key}) : super(key: key);@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("设置")),body: TextButton(onPressed: () {ScopoedModelHelper.getModel<AuthModel>(context).logout();CommontToast.showToast("退出登录");},child: Text("退出登录")),);}
}
2.4、路由中注册设置页面
import 'package:fluro/fluro.dart';
import 'package:flutter/material.dart';
import 'package:flutter_haoke/loading.dart';
import 'package:flutter_haoke/pages/community_picker.dart';
import 'package:flutter_haoke/pages/home/index.dart';
import 'package:flutter_haoke/pages/loading.dart';
import 'package:flutter_haoke/pages/login.dart';
import 'package:flutter_haoke/pages/notfound.dart';
import 'package:flutter_haoke/pages/register.dart';
import 'package:flutter_haoke/pages/room_add/index.dart';
import 'package:flutter_haoke/pages/room_manager/index.dart';
import 'package:flutter_haoke/pages/roomdetail/index.dart';
import 'package:flutter_haoke/pages/setting.dart';class Routes {static String home = '/';static String login = '/login';static String register = '/register';static String roomdetail = '/roomDetail/:roomId';static String setting = '/setting';static String roommanager = '/roommanager';static String roomAdd = '/roomAdd';static String community = '/community';static String loading = '/loading';static Handler _homeHandel = Handler(handlerFunc: (context, parameters) {return HomePage();},);static Handler _loginHandel = Handler(handlerFunc: (context, parameters) {return LoginPage();},);static Handler _registerHandel = Handler(handlerFunc: (context, parameters) {return RegisterPage();},);static Handler _settingHandel = Handler(handlerFunc: (context, parameters) {return SettingPage();},);static Handler _roommanagerHandel = Handler(handlerFunc: (context, parameters) {return RoomManagerPage();},);static Handler _roomdetailHandel = Handler(handlerFunc: (context, parameters) {return RoomDetailPage(roomId: parameters["roomId"]![0],);},);static Handler _notfoundHandel = Handler(handlerFunc: (context, parameters) {return NotFoundPage();},);static Handler _roomAddHandel = Handler(handlerFunc: (context, parameters) {return RoomAddPage();},);static Handler _communityHandel = Handler(handlerFunc: (context, parameters) {return CommunityPickerPage();},);static Handler _loadingHandel = Handler(handlerFunc: (context, parameters) {return LoadingPage();},);static void configureRoutes(FluroRouter router) {router.define(home, handler: _homeHandel);router.define(login, handler: _loginHandel);router.define(register, handler: _registerHandel);router.define(roomdetail, handler: _roomdetailHandel);router.define(setting, handler: _settingHandel);router.define(roommanager, handler: _roommanagerHandel);router.define(roomAdd, handler: _roomAddHandel);router.define(community, handler: _communityHandel);router.define(loading, handler: _loadingHandel);router.notFoundHandler = _notfoundHandel;}
}