当前位置: 首页 > news >正文

Flutter flutter_boost 集成

刚开始接触使用flutter boost路由的心得体会记录如下:

Fltter项目部分:

  • 第一步
    在Flutter项目的 pubspec.yaml文件中添加如下信息:
flutter_boost:git:url: 'https://github.com/alibaba/flutter_boost.git'ref: '4.3.0'

之后在flutter工程下运行flutter pub get dart端就集成完毕了,然后可以在dart端上使用flutter boost了。

  • 第二步
    在main.dart 文件中进行代码编写
import 'package:flutter/material.dart';
import 'package:flutter_boost/flutter_boost.dart';
import 'package:list/douban/hyrouter.dart';void main() {// 这里的CustomFlutterBinding 调用务必不可缺少,用于控制Boost状态的resume磨合pauseCustomFlutterBinding();runApp(const MyApp());
}// 创建一个自定义的Biding,继承和with的关系如下,里面什么都不用写
class CustomFlutterBinding extends WidgetsFlutterBinding with BoostFlutterBinding{}class MyApp extends StatelessWidget {const MyApp({super.key});
// FlutterBoostRouteFactory 使用
// 这是创建了一个文件单独管理路由映射表 HYRouterRoute<dynamic>? routeFactory(RouteSettings settings, String? uniqueId) {FlutterBoostRouteFactory func = HYRouter.routeMap[settings.name] as FlutterBoostRouteFactory;return func(settings, uniqueId);}Widget appBuilder(Widget home) {return MaterialApp(home: home,debugShowCheckedModeBanner: true,// 必须加上builder参数,否则 showDialog 等会出问题builder: (_, __){return home;},);}// This widget is the root of your application.Widget build(BuildContext context) {return FlutterBoostApp(// 这里是使用上面工厂 routerouteFactory,appBuilder: appBuilder);}
}

路由管理类:

import 'package:flutter/material.dart';
import 'package:flutter_boost/flutter_boost.dart';
import 'package:list/douban/detail.dart';
import 'hello.dart';class HYRouter {static const String home = '/';static const String detail = '/detail';static final Map<String, FlutterBoostRouteFactory> routeMap = {
// 路由注册home:(settings, uniqueId) {return MaterialPageRoute(settings: settings,builder: (_) {return HelloPage();});},detail:(settings, uniqueId) {return MaterialPageRoute(settings:  settings,builder: (_) {final map = settings.arguments as Map<String, dynamic>;print("detail: ${map}");return DetailPage();});}};}

创建 home = ‘/’ widget,进入flutter的入口

import 'package:flutter/material.dart';
import 'package:flutter_boost/flutter_boost.dart';
import 'package:list/douban/hyrouter.dart';class HelloPage extends StatefulWidget {State<StatefulWidget> createState() {return _HelloPageState();}
}class _HelloPageState extends State<HelloPage> {Widget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text("home"),),body: Center(child: Column (mainAxisAlignment: MainAxisAlignment.center,children: [TextButton(child: Text("跳转详情"),onPressed: () {print("点击跳转详情");// 使用flutter boost跳转,也可以使用 Navigator ofBoostNavigator.instance.push(HYRouter.detail,arguments: {"home":"home界面传给detail的数据"});},)],),),);}}

页面返回上一级

 BoostNavigator.instance.pop("点击返回首页的数据");

到此一个简单集成 使用 flutter boos完毕

相关文章:

Flutter flutter_boost 集成

刚开始接触使用flutter boost路由的心得体会记录如下&#xff1a; Fltter项目部分&#xff1a; 第一步 在Flutter项目的 pubspec.yaml文件中添加如下信息&#xff1a; flutter_boost:git:url: https://github.com/alibaba/flutter_boost.gitref: 4.3.0之后在flutter工程下运…...

Stable Diffusion中人物生成相关的negative prompts

下面是常用的negative prompt&#xff0c;在使用stable Diffusion webui等工具生成时可以填入。 bad anatomy, bad proportions, blurry, cloned face, deformed, disfigured, duplicate, extra arms, extra fingers, extra limbs, extra legs, fused fingers, gross proporti…...

QT - 建立页面

一、生成页面 二、实现 1.LineEdit 是一个单行输入文本框&#xff0c;为用户提供了比较多的编辑功能&#xff0c;例如选择复制、粘贴。 修改echomode属性为password Push Button(常规按钮) 三、程序 声明全局变量&#xff0c;属于MainWindow private: // 定义了一个指向Ma…...

python中几个有趣的函数和推导式

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 一、range()函数 1、range()通常用来做循环。 2、range()生成器的特性。 例子&#xff1a;假如range&#xff08;&#xff09;中使用的数值特别大&#xff0c;为100000000000000000000000000000&#xff1f; python解释…...

【Jenkins】Jenkins 安装

Jenkins 安装 文章目录 Jenkins 安装一、安装JDK二、安装jenkins三、访问 Jenkins 初始化页面 Jenkins官网地址&#xff1a;https://www.jenkins.io/zh/download/ JDK下载地址&#xff1a;https://www.oracle.com/java/technologies/downloads/ 清华源下载RPM包地址&#xff…...

LNMP搭建以及Discuz论坛部署

目录 LNMP 编译安装 LNMP搭建 Nginx 服务 MySQL 服务 PHP 解析环境 部署 Discuz社区论坛 LNMP 目前成熟的企业网站的应用模式之一&#xff0c;指的是一套协同工作的系统和相关软件&#xff0c;能提供静态页面服务和动态web服务 L linux系统 N nginx网站服务&#xff0…...

MGRE综合

实验 一、实验思路 1.先按照上图配置IP地址及环回 2.写缺省使公网可通 3.让R1、R4、R5每台路由器均成为中心站点形成全连网状结构拓扑 4.让R1成为中心站点R2R3为分支站点 5.分区域宣告ospf之后更改ospf在虚拟接口Tunnel工作方式为broadcast及让R1 当选DR 二、上虚拟机操作…...

hcip的mgre和ospf实验

题目 拓扑图 一、配置环回和IP地址 R1 < Huawei>sy Enter system view, return user view with CtrlZ. [Huawei]sysname r1 [r1]int g0/0/1 [r1-GigabitEthernet0/0/1]ip add 64.1.1.1 24 Aug 4 2023 18:56:07-08:00 r1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol…...

gdb学习笔记

参考:https://blog.csdn.net/Stars_WW/article/details/88994391 gdb常用交互命令 启动gdb后&#xff0c;进入到交互模式&#xff0c;通过以下命令完成对程序的调试&#xff1b;注意高频使用的命令一般都会有缩写&#xff0c;熟练使用这些缩写命令能提高调试的效率&#xff1b;…...

java -jar指定外部配置文件

场景 spingboot项目部署jar时,需要时常修改配置,为了方便,将配置文件放到jar包外 操作步骤 在jar包同级目录下创建config文件夹(位置没有强制要求,为了方便而已) 在jar包同级目录下创建start.bat文件,并编辑内容 echo off :: 命令窗口标题 title yudibei_performance_tes…...

【IDEA】常用插件清单

【IDEA】常用插件清单 arthas ideaCodeium: AI Autocomplete for xxxCommit-MessageGenerateAllSetterMaven HelperMybatisPlusOne Dark themePDF ViewerRainbow BracketsRestfulToolSequenceDiagramSonarLintTranslation arthas idea 快捷生成arthas命令 Codeium: AI Autoc…...

私域流量运营数据分析:6个关键指标

随着数字化时代的到来&#xff0c;私域流量运营已经成为企业营销的重要策略。然而&#xff0c;要确保私域流量运营的有效性和成功&#xff0c;数据分析是至关重要的一环。通过对运营数据进行深入分析&#xff0c;企业可以了解用户行为和趋势&#xff0c;发现问题和机遇&#xf…...

解释器模式——自定义语言的实现

1、简介 1.1、文法规则和抽象语法树 解释器模式描述了如何为简单的语言定义一个文法&#xff0c;如何在该语言中表示一个句子&#xff0c;以及如何解释这些句子。在正式分析解释器模式结构之前&#xff0c;先来学习如何表示一个语言的文法规则以及如何构造一棵抽象语法树。 …...

基于STM32103移植FreeRTOS

目录 一、FreeRTOS协议栈下载 二、准备工程文件与协议代码 三、移植FreeRTOS协议栈 一、FreeRTOS协议栈下载 1、官网下载 FreeRTOS - Market leading RTOS (Real Time Operating System) for embedded systems with Internet of Things extensionshttps://www.freertos.or…...

docker compose一键部署lnmt环境

创建docker compose 目录 [rootlocalhost ~]# mkdir -p /compose_lnmt 编写nginx的dockerfile文件 创建目录 [rootlocalhost compose_lnmt]# mkdir -p nginx 编写nginx配置文件 [rootlocalhost nginx]# vim nginx.conf user root; #运行身份#nginx自动设置进程…...

Eeny Meeny Moo

Eeny Meeny Moo 题目描述输入输出格式输入格式输出格式 输入输出样例输入样例输出样例 正确解法A C 代码 题目描述 你肯定有过这样的经验&#xff0c;那就是当很多一起使用网络的时候&#xff0c;网速变得很慢很慢。为了解决这个问题&#xff0c;德国的Ulm大学开发了一份意外事…...

flask---闪现/请求扩展/g对象

闪现 # 一个请求---》假设出错了---》重定向到另一个地址---》把错误信息在另一个返回中看到 错误信息放个位置----》另一个请求过来&#xff0c;去那个位置拿 # 把一些数据&#xff0c;放在某个位置---》后期可以去取出来----》取完不用删除&#xff0c;就没了 def index():s…...

Qt视频播放器

一、设置好ui界面二、打开文件槽函数1.QDir::homePath()作用介绍2.QFileDialog::getOpenFileName()介绍3.QFileInfo介绍4.player 指针解释5.打开文件槽函数完整代码 三、视频播放器初始化1.QMediaPlayer()函数2.设置时间间隔的作用3. QGraphicsScene介绍4.QGraphicsVideoItem介…...

Stable Diffusion教程(8) - X/Y/Z 图表使用

1. 介绍 这项功能可以在 文生图/图生图 界面的左下角种 “脚本” 一栏内选择 “X/Y/Z 图表” 以启用。 它创建具有不同参数的图像网格。使用 X 类型和 Y 类型字段选择应由行和列共享的参数&#xff0c;并将这些参数以逗号分隔输入 X 值 / Y 值字段。支持整数、浮点数和范围。…...

Android 获取网关 ip 和 DNS ip

参考下方 PingUtil.java 代码 import android.content.Context; import android.net.DhcpInfo; import android.net.wifi.WifiManager; import android.text.format.Formatter;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; impor…...

dateutil高级用法:如何自定义解析器、扩展时区功能和创建复杂规则

dateutil高级用法&#xff1a;如何自定义解析器、扩展时区功能和创建复杂规则 【免费下载链接】dateutil Useful extensions to the standard Python datetime features 项目地址: https://gitcode.com/gh_mirrors/da/dateutil dateutil是Python中一个强大的日期时间处理…...

2001-2023年各省农产品进出口额数据(无缺失)

2001-2023年各省农产品进出口额数据 1、时间&#xff1a;2001-2023年 2、来源&#xff1a;商务BU、农业年鉴、海关总署 3、指标&#xff1a;年份、省份、农产品出口额&#xff08;亿元&#xff09;、农产品进口额&#xff08;亿元&#xff09;、农产品出口额&#xff08;万美…...

Piggy_Packages V2026.1 帮助文档(七)WRFDA同化试验

数值天气预报的主要误差来源于初始场的误差。资料同化&#xff08;Data Assimilation&#xff09;是一种将观测资料与数值天气预报&#xff08;NWP&#xff09;产品及其各自的误差统计数据相结合的技术&#xff0c;旨在为数值模式提供更加准确的初始场。 在“Piggy_Packages V…...

C++头文件详解:<iomanip> 头文件使用详解

目录 一、前言 二、浮点数精度控制 2.1 fixed 与 setprecision() &#xff08;1&#xff09;fixed 的作用 &#xff08;2&#xff09;setprecision(n) 的作用 &#xff08;3&#xff09;示例&#xff1a;RGB 转 YUV 计算 2.2 scientific 科学计数法 三、设置输出宽度与…...

CP880显示驱动库:车规级TFT-LCD底层控制与零拷贝实现

1. CP880显示驱动库深度解析&#xff1a;面向CARIAD车载信息娱乐系统的TFT-LCD底层控制方案1.1 库定位与工程背景CP880是专为大众集团CARIAD软件平台定制的嵌入式图形显示驱动库&#xff0c;核心目标是为车载信息娱乐系统&#xff08;IVI&#xff09;提供高可靠性、低延迟的TFT…...

OpenClaw学习助手:百川2-13B量化模型自动整理课程笔记

OpenClaw学习助手&#xff1a;百川2-13B量化模型自动整理课程笔记 1. 为什么需要自动化笔记整理 作为一名经常需要消化大量课程资料的技术从业者&#xff0c;我长期被两个问题困扰&#xff1a;一是阅读PDF/PPT时手动摘录效率低下&#xff0c;二是分散的笔记难以形成知识体系。…...

微软常用运行库 安装教程:一键修复VC++运行环境(AIO合集)

一、工具简介 微软运行库合集&#xff08;MSVBCRT AIO&#xff09;​ 是一款集成了多个版本 Microsoft Visual C Redistributable 的运行库安装工具。 许多 Windows 软件&#xff08;尤其是游戏、专业工具&#xff09;依赖这些运行库才能正常运行&#xff0c;缺失时常会提示类…...

Lingyuxiu MXJ LoRA快速部署教程:开箱即用镜像+浏览器直连创作流程

Lingyuxiu MXJ LoRA快速部署教程&#xff1a;开箱即用镜像浏览器直连创作流程 1. 项目简介 Lingyuxiu MXJ LoRA创作引擎是一款专门为生成唯美真人风格人像而设计的智能图像生成系统。这个项目最大的特点就是专注于一种风格——Lingyuxiu MXJ风格&#xff0c;这种风格以细腻的…...

CSS如何实现动态间距调整_通过CSS变量控制padding与margin值

CSS变量可动态修改padding/margin&#xff0c;需以--开头、设默认值如var(--space-md, 12px)&#xff0c;响应式通过media更新变量值&#xff0c;注意margin塌陷、命名规范及单位一致性。怎么用CSS变量动态改padding和margin直接在根元素或组件上定义--space-sm、--space-md这类…...

如何配置表结构支持读写分离标记_在COMMENT中添加路由规则的架构级应用

能&#xff0c;但需数据库、ORM和中间件协同支持&#xff1b;MySQL 5.7/PostgreSQL 支持COMMENT存储路由标记&#xff0c;但须手动解析&#xff0c;且配置不当易失效。COMMENT 字段真能当路由标记用&#xff1f;能&#xff0c;但不是所有数据库都认&#xff0c;也不是所有 orm …...