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

flutter-boilerplate-project 学习笔记

项目地址:

https://github.com/zubairehman/flutter_boilerplate_project/tree/master

样板包含创建新库或项目所需的最小实现。存储库代码预加载了一些基本组件,例如基本应用程序架构、应用程序主题、常量和创建新项目所需的依赖项。通过使用样板代码作为标准初始值设定项,我们可以在所有将继承它的项目中具有相同的模式。这也将有助于减少设置和开发时间,允许您使用相同的代码模式并避免从头开始重写。

代码生成

该项目使用与代码生成配合使用的库,执行以下命令生成文件:inject

flutter packages pub run build_runner build --delete-conflicting-outputs

或 watch 命令以保持源代码自动同步:

flutter packages pub run build_runner watch

隐藏生成的文件

要隐藏生成的文件,请导航到 -> -> -> 并将以下行粘贴到部分下:Android StudioPreferencesEditorFile Typesignore files and folders

*.inject.summary;*.inject.dart;*.g.dart;

在 Visual Studio Code 中,导航到 -> 并搜索 。添加以下模式:PreferencesSettingsFiles:Exclude

**/*.inject.summary
**/*.inject.dart
**/*.g.dart

国际化

多语言国际化开发

代码在线运行

https://dartpad.dev/?embed=true&split=60&run=true&sample_id=material.ListTile.2&channel=stable

Theme主题设置

默认的主题,是红色的,可以尝试调整一下主题,或者使用Material 主题。

修改

samking_pump/lib/constants/app_theme.dart

就可以实现主色调的修改了。

在这个文件中

samking_pump/lib/presentation/my_app.dart

有如下代码:

Widget build(BuildContext context) {return Observer(builder: (context) {return MaterialApp(debugShowCheckedModeBanner: false,title: Strings.appName,theme: _themeStore.darkMode? AppThemeData.darkThemeData: AppThemeData.lightThemeData,

这里有个return MaterialApp(…) 说明本身就是使用的是Material主题的。

使用Material默认主题

修改 samking_pump/lib/constants/app_theme.dart

  return ThemeData(colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue),useMaterial3: true,);

设置主色调自动生成配色方案

  //这会根据 seedColor 自动生成一整套符合 Material 设计规范的颜色方案,非常实用。static ColorScheme blueLightColorScheme = ColorScheme.fromSeed(seedColor: Colors.blue, // 你也可以换成你喜欢的主色,比如 Colors.greenbrightness: Brightness.light,);

颜色查询

https://api.flutter.dev/flutter/material/Colors-class.html

http://www.lryc.cn/news/606894.html

相关文章:

  • gitlab+jenkins的ci/cd部署
  • 《R for Data Science (2e)》免费中文翻译 (第3章) --- Data transformation(1)
  • ceph 14.2.22 nautilus Balancer 数据平衡
  • gitlab 开发人员无法创建分支,管理员配置分支权限
  • 「一键召唤 007」:开源多智能体 JoyAgent-JDGenie 如何让你的 AI 产品从 Demo 到 真香 只差 Ctrl+C / Ctrl+V?
  • Linux 内存管理之 Rmap 反向映射
  • 07-netty基础-自定义编解码器
  • Linux信号捕捉与穿插中断
  • linux中posix消息队列的使用记录
  • 鸿蒙系统下的动态负载均衡实战:让分布式任务调度更智能
  • 等保2.0指南:从系统等级划分到测评全流程攻略
  • 【PyTorch✨】01 初识PyTorch
  • 算法提升之数学(唯一分解定理)
  • 【unity小技巧】封装unity适合2D3D进行鼠标射线检测,获取鼠标位置信息检测工具类
  • Linux通用SPI作为Master——回环测试
  • 多屏混合KVM Dock扩展坞 如何打造极致高效生产力
  • 9.1无法恢复的错误与 panic!
  • Codeforces Round 1040 (Div. 2) A - D题详细题解
  • 第13届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2021年10月24日真题
  • 项目上传到github中
  • Web3.0如何塑造互联网的未来
  • Spring AI MCP:解锁大模型应用开发新姿势
  • GitLab Docker Compose 迁移后 Redis 权限问题排查与解决
  • Linux中Docker Swarm介绍和使用
  • 深度学习-梯度爆炸与梯度消失
  • 宝塔服务器挂载数据盘
  • Hive SQL (HQL) 编辑指南
  • Jupyter Notebook 使用指南
  • 深度解析:Nginx的卓越性能
  • Java 24 新特性解析与代码示例