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

flutter 默认跳转封装

flutter 默认跳转封装:

class AppRouter {
  //跳转到目标页面
  static Future<void> push(BuildContext context, Widget view)  async {
    await Navigator.push(
      context,
      MaterialPageRoute(builder: (context) => view),
    );
  }

  //跳转到目标页面并等待返回结果
  static Future<T?> pushWithResult<T>(BuildContext context, Widget view) async {
    return await Navigator.push<T>(
      context,
      MaterialPageRoute(builder: (context) => view),
    );
  }

  // 跳转到目标页面并移除所有之前的页面
  static Future<void> pushAndReplaceAll(
      BuildContext context, Widget view) async {
    await Navigator.pushAndRemoveUntil(
      context,
      MaterialPageRoute(builder: (context) => view),
      (route) => false, // 这个条件意味着移除所有页面
    );
  }


  // 返回上一页
  static void pop(BuildContext context, {dynamic result}) {
    Navigator.pop(context, result);
  }
}

http://www.kler.cn/a/540298.html

相关文章:

  • 防火墙术语大全( Firewalld Glossary of Terms)
  • Axure原型图怎么通过链接共享
  • 2 CXX-Qt #[cxx_qt::bridge] 宏指南
  • 打家劫舍3
  • R语言LCMM多维度潜在类别模型流行病学研究:LCA、MM方法分析纵向数据
  • .net一些知识点5
  • Powershell语言的数据库编程
  • Windows 本地部署大模型 OpenWebUI+Ollama
  • 游戏引擎学习第95天
  • 【GIS】本地部署nominatim地理编码服务
  • 【人工智能】python之set集合练习
  • 等级保护2.0|网络安全服务
  • pytorch torch.linalg模块介绍
  • pip3命令全解析:Python3包管理工具的详细使用指南
  • 【LeetCode 热题100】74:搜索二维矩阵(二分、线性两种方式 详细解析)(Go 语言实现)
  • 超越 DeepSeek V3 -->【Qwen2.5-Max】
  • 【快应用】原生广告下载状态监听案例
  • 证明: 极限的局部有界性
  • Faiss特征向量搜索
  • ESP-IDF学习记录(6)
  • Django开发入门 – 2.Django的Web应用项目架构
  • flink JobGraph解析
  • leetcode刷题-动态规划04
  • 机器学习:学习记录(二)
  • Kotlin实战经验:将接口回调转换成suspend挂起函数
  • Bigemap Pro如何裁剪矢量数据