随笔分类 -  Flutter / Flutter学习

摘要:一、什么是 Completer? Completer 是 Dart 异步库 dart:async 中的一个类,用于创建和控制一个 Future。它允许开发者手动完成一个 Future,使得 Future 的完成时机可以由代码逻辑自由控制,而不是由某个异步操作自动决定。 简单说,Completer 是 阅读全文
posted @ 2025-05-30 16:36 fengMisaka 阅读(253) 评论(0) 推荐(1)
摘要:在 Flutter/Dart 中,async 和 await 是处理异步编程的核心关键字,它们可以让你以同步的方式编写异步代码,显著提高代码的可读性和可维护性。 一、同步/异步的理解 await:同步机制 同步操作会阻止其他操作执行,直到完成为止。同步就好比打电话一样,打电话时都是一个人在说另一个人 阅读全文
posted @ 2025-05-30 14:41 fengMisaka 阅读(649) 评论(0) 推荐(0)
摘要:一、StreamBuilder/FutureBuilder 在 Flutter 中,StreamBuilder 和 FutureBuilder 都是用于处理异步数据源的常用组件。它们允许你在等待异步操作完成时更新 UI。尽管它们的功能类似,但它们适用于不同的异步数据源类型。 1.1 FutureBu 阅读全文
posted @ 2025-05-30 14:41 fengMisaka 阅读(213) 评论(0) 推荐(1)
摘要:一、Flutter初识 下面博客介绍了 Flutter 的基本介绍、环境搭建、第一个项目创建运行等等: Flutter初识(1):初识Flutter - fengMisaka - 博客园 Flutter初识(2):搭建Flutter开发环境 Flutter初识(3):Flutter开发初体验 Flu 阅读全文
posted @ 2025-02-12 15:09 fengMisaka 阅读(744) 评论(0) 推荐(0)
摘要:1.1 文件名称应该以小写字母加下划线的规则来命名(file_names) 警告示例: import 'LogoWidget.dart'; 警告:The file name 'LogoWidget.dart' isn't a lower_case_with_underscores identifie 阅读全文
posted @ 2024-12-25 17:12 fengMisaka 阅读(794) 评论(0) 推荐(0)
摘要:一、报错 Non-nullable instance field 'username' must be initialized. 报错代码: class _FormDemoState extends State<FormDemo> { final registerFormKey = GlobalKe 阅读全文
posted @ 2024-12-25 17:11 fengMisaka 阅读(1868) 评论(0) 推荐(0)
摘要:在 Flutter 应用开发中,无论是处理网络请求,执行耗时任务,或是等待用户响应,我们总是需要在界面上显示进度条或者等待指示器。在这篇博客中,我们将介绍 Flutter 中两种常用的进度指示器:LinearProgressIndicator 和 CircularProgressIndicator。 阅读全文
posted @ 2024-11-25 10:35 fengMisaka 阅读(2291) 评论(0) 推荐(0)
摘要:Switch组件是 Flutter 中用于二选一开关功能的核心控件,类似于 iOS 中的滑动开关和 Android 中的切换按钮。它通常用于让用户在两种状态之间切换,如开/关、是/否等。Switch是一个非常直观的控件,当用户需要快速启用或禁用某个功能时,它可以提供最直接的交互方式。 一、基本使用 阅读全文
posted @ 2024-11-25 10:34 fengMisaka 阅读(1450) 评论(1) 推荐(0)
摘要:Checkbox 提供了一个标准的复选框界面,用户可以点击复选框来切换选中或未选中状态。选中状态通常用于表示用户希望启用或禁用某个选项。Checkbox 通常用于表单、设置页面或任何需要用户确认或选择的场景。 一、基本使用 使用Checkbox的基本方式如下: Checkbox( value: is 阅读全文
posted @ 2024-11-25 10:34 fengMisaka 阅读(900) 评论(0) 推荐(0)
摘要:一、MouseRegion介绍 在我们进行 h5 开发的时候,我们都知道css有一个hover来改变元素的样式,那么我们在Flutter中也可以通过MouseRegion是监听区域内鼠标的进入和退出以及移动轨迹。 二、什么情况下使用MouseRegion? MouseRegion常用于Flutter 阅读全文
posted @ 2024-11-20 13:53 fengMisaka 阅读(349) 评论(0) 推荐(0)
摘要:一、GestureDetector介绍 在前面的文章中我们介绍了Listener,而GestureDetector是对Listener的封装,提供非常多的手势,包括单击、双击、拖动、混合手势等。 二、什么情况下使用GestureDetector? 当我们需要对文字需要增加点击事件时,或者需要对组件进 阅读全文
posted @ 2024-11-20 13:52 fengMisaka 阅读(869) 评论(0) 推荐(0)
摘要:一、PointerEvent介绍 PointerEvent是触摸、手写笔、鼠标事件的基类。 在上文中,我们知道了什么是Listener并写了一个简单的案例,在使用案例的过程中我们的事件里面都带了一个event参数,而所有的事件最终都是继承自PointerEvent,那我们接下来看看event的参数有 阅读全文
posted @ 2024-11-20 13:52 fengMisaka 阅读(225) 评论(0) 推荐(0)
摘要:这篇文章是关于 Flutter 中 Listener 组件的教程,介绍了其功能、使用场景、原理、构造函数、属性等。Listener 用于监听屏幕触摸事件,常用于隐藏键盘、下拉刷新等,其原理涉及指针事件的分发。还列举了常用回调函数、属性及说明,通过案例和控制台输出进行演示,包括 behavior 属性 阅读全文
posted @ 2024-11-18 16:17 fengMisaka 阅读(465) 评论(0) 推荐(0)
摘要:一、Timer简介 Flutter 的 Timer 类是 Dart 语言中的一个内置类,用于创建定时器。定时器可以用于在一段时间后执行代码,或者以固定的时间间隔重复执行代码。Timer 类提供了一种简单的方式来管理这些时间相关的任务。 二、Timer类的详细介绍 2.1 导入dart:async包 阅读全文
posted @ 2024-11-15 15:58 fengMisaka 阅读(2498) 评论(0) 推荐(0)
摘要:一、简介 flutter_screenutil 是一个 Flutter 插件,专门用于处理屏幕适配问题。它简化了不同设备间尺寸差异的处理,确保你的应用在各种屏幕上都能保持良好的显示效果。开发者可以通过简单的调用来设置基于设计图尺寸的控件宽高和字体大小。 项目地址:https://github.com 阅读全文
posted @ 2024-10-18 10:06 fengMisaka 阅读(2882) 评论(0) 推荐(0)
摘要:在 Flutter 中,如果你想要在一个 Dart 文件中使用另一个 Dart 文件定义的组件,你可以通过以下步骤来实现: (1)确保你想要使用的组件已经在另一个Dart文件中被定义,并且这个文件导出了这个组件。 例如,假设你有一个名为my_component.dart的文件,其中定义了一个名为My 阅读全文
posted @ 2024-10-18 10:04 fengMisaka 阅读(460) 评论(0) 推荐(0)
摘要:一、程序入口 main.dart // ignore_for_file: prefer_const_constructors import 'package:flutter/material.dart'; import 'widgets/routes.dart'; // 添加路由页面 main(Li 阅读全文
posted @ 2024-10-18 10:02 fengMisaka 阅读(341) 评论(0) 推荐(0)
摘要:一、路由管理 1.1 认识Flutter路由 路由的概念由来已久,包括网络路由、后端路由,到现在广为流行的前端路由。 无论路由的概念如何应用,它的核心是一个路由映射表 比如:名字 detail 映射到 DetailPage 页面等 有了这个映射表之后,我们就可以方便的根据名字来完成路由的转发(在前端 阅读全文
posted @ 2024-10-18 10:01 fengMisaka 阅读(938) 评论(0) 推荐(0)
摘要:一、showModalBottomSheet(模态底部弹出框) showModalBottomSheet 用于显示一个模态底部弹出框。 属性解析: Future<T?> showModalBottomSheet<T>({ required BuildContext context, // 表示底部弹 阅读全文
posted @ 2024-10-11 16:15 fengMisaka 阅读(3601) 评论(0) 推荐(1)
摘要:Material 库提供了三种基本对话框组件 AlertDialog 通常用于提示型对话框 SimpleDialog 通常用于列表型对话框 Dialog 通常用于自定义布局元素的对话框 弹出对话框时,调用 showDialog 函数,将对话框控件传入,由于对话框本身是路由,所以关闭对话框时,需使用 阅读全文
posted @ 2024-10-11 16:15 fengMisaka 阅读(1059) 评论(0) 推荐(0)