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