
Flutter
文章平均质量分 80
訾博ZiBo
慢慢学,不要停。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Flutter 组件】005-基础组件:单选、开关和复选框
使用 GlobalKey:可以为子组件创建一个 GlobalKey 对象,通过该 GlobalKey 可以获取到子组件的状态,并调用其方法。在 Flutter 中,子组件可以通过回调函数的方式来调用父组件的方法。原创 2023-07-05 00:25:39 · 1463 阅读 · 0 评论 -
Flutter 父子组件互调方法
使用 GlobalKey:可以为子组件创建一个 GlobalKey 对象,通过该 GlobalKey 可以获取到子组件的状态,并调用其方法。在 Flutter 中,子组件可以通过回调函数的方式来调用父组件的方法。原创 2023-07-04 19:54:25 · 3907 阅读 · 0 评论 -
Flutter 库:强大的工具及扩展——nb_utils
flutter_nb_utils是一个Flutter开发工具包,提供了各种实用方法、小部件扩展和工具函数,旨在提高开发效率并简化常见任务的实现。原创 2023-06-13 17:02:15 · 1744 阅读 · 0 评论 -
Flutter 库:提升开发体验——Quick
Quick 是一个功能强大的 Flutter 包,旨在通过为字符串、列表和映射等类型提供多种扩展方法来增强开发体验,从而实现更高效、更清晰的编码体验。它的灵感来自Bootstrap和,并使用Flutter和Dart构建。该软件包提供了广泛的实用程序功能,例如将填充、可见性和文本样式应用于小部件。通过导入包并在小部件上使用提供的扩展方法,可以轻松地将其集成到代码中。原创 2023-06-13 16:28:47 · 1309 阅读 · 0 评论 -
【Flutter 布局】001-Flex 布局
Flex是 Flutter 中的一个小部件,用于创建一个弹性布局容器。它允许在一个轴上按比例分配可用空间,并根据需要调整子项的大小。Flexdirection和children。direction:指定了弹性容器的主轴方向。可以是水平方向()或垂直方向(children:包含在弹性容器中的子项列表。Flex使用一种类似于弹性盒子模型的方式来布局子项。子项可以使用Expanded小部件来指定它们在弹性容器中的相对比例。通过在子项中使用Expanded。原创 2023-06-11 13:38:07 · 1268 阅读 · 0 评论 -
Flutter 使用 Key 强制重新渲染小部件
LocalKey 只在当前小部件树中唯一,而 GlobalKey 在整个应用程序中是全局唯一的。Key 的主要作用是标识小部件。当 Flutter 进行小部件树的重建时,它会根据 Key 来判断哪些小部件需要重新创建,哪些小部件可以复用。如果想在小部件树中唯一标识该 Key,可以使用。将创建的 Key 分配给要重新渲染的小部件。可以在创建小部件时通过构造函数传递 Key,或者使用。属性将 Key 分配给现有的小部件。方法,并根据新的状态重新渲染小部件。来生成全局唯一的 Key。方法来触发小部件的重建。原创 2023-06-10 23:40:21 · 2152 阅读 · 0 评论 -
Flutter 库:强大的下拉刷新上拉加载框架——EasyRefresh
wakelock 是允许您保持设备屏幕唤醒的插件,即防止屏幕睡眠。该插件允许您启用和切换屏幕唤醒锁,从而防止屏幕自动关闭。从本质上讲,这使您可以保持设备处于唤醒状态,即防止设备进入睡眠状态。原创 2023-06-08 15:22:17 · 7126 阅读 · 0 评论 -
Flutter 库:保持常亮——唤醒锁 (wakelock)
wakelock 是允许您保持设备屏幕唤醒的插件,即防止屏幕睡眠。该插件允许您启用和切换屏幕唤醒锁,从而防止屏幕自动关闭。从本质上讲,这使您可以保持设备处于唤醒状态,即防止设备进入睡眠状态。原创 2023-06-08 13:55:41 · 3308 阅读 · 0 评论 -
Flutter 列表【代码实践】
Flutter 列表原创 2023-06-02 00:21:16 · 223 阅读 · 0 评论 -
Flutter 对话框【代码实践】
Flutter 对话框原创 2023-06-01 23:02:23 · 396 阅读 · 0 评论 -
【Flutter 工程】006-路由跳转:go_router
GoRouter是一个用于Flutter应用程序的导航库,它提供了一种简单而强大的方式来管理应用程序的导航栈和路由。它可以帮助你组织和管理Flutter应用程序中的页面导航,使页面之间的跳转和参数传递更加方便。简单易用:GoRouter的API设计简单直观,易于使用和理解。它提供了一个简洁的接口来定义和管理应用程序的路由规则。路由规则定义:你可以使用GoRouter定义应用程序的路由规则。通过指定路径和相应的构造器函数,你可以将路由规则与Flutter Widget相关联。原创 2023-05-27 15:34:42 · 2704 阅读 · 1 评论 -
【Flutter 工程】005-代码分离实践:flutter_hooks & functional_widget
在Flutter开发中,“嵌套地狱”(Nesting Hell)是指在构建复杂的UI布局时,由于多层嵌套的组件结构,代码变得冗长、难以维护和理解的情况。Flutter使用组件树的方式来构建用户界面,每个UI元素都是一个组件,可以包含其他组件。在某些情况下,特别是当需要实现复杂的布局或嵌套的组件结构时,代码中的组件嵌套层级可能会不断增加,从而导致出现"嵌套地狱"。代码冗长和可读性差:过多的嵌套会导致代码变得冗长,难以理解和维护。每个嵌套层级都需要处理相应的组件和属性,使得代码结构复杂化。性能问题。原创 2023-05-26 16:26:59 · 2451 阅读 · 3 评论 -
【Flutter 工程】004-代码生成:functional_widget
部件代码冗长,使用普通函数可以更好地完成某些事情的代码但不推荐这么做!因为 Flutter 能够对类组件进行 const 优化,如果使用函数的话会丧失这种优化!原创 2023-05-26 15:28:33 · 1046 阅读 · 0 评论 -
【Flutter 工程】003-钩子函数:Flutter Hooks
Hooks 是 React 框架中引入的一项特性,用来分离状态逻辑和视图逻辑。如今,这个概念已经不仅限于 React,其他前端框架也在学习和借鉴。在 Flutter 开发中,业务逻辑和视图逻辑的耦合一直是一个比较突出的痛点,这也是各大前端框架常遇到的一个共性难题。为了解决这个问题,前端社区提出了许多方案,如MVP、MVVM、React 的Mixin、高阶组件(HOC),以及Hooks。在Flutter中,开发者可能对Mixin比较熟悉。Mixin 之间可能互相依赖,导致依赖关系混乱;原创 2023-05-26 13:43:40 · 891 阅读 · 0 评论 -
【Flutter 工程】002-代码生成:Freezed ——类似 Java 的 lombok
Flutter 的 Freezed 是一个代码生成工具,用于帮助开发者在Flutter应用程序中创建不可变(immutable)的数据模型。它基于Dart语言的代码生成功能,通过生成大量的模板代码来简化和加速不可变数据类的创建过程。使用Freezed,您可以定义数据模型类,并自动生成大量的模板代码,包括等价性比较(equality)、哈希码(hashcode)以及复制(copy)等方法。这些模板代码通过元编程技术生成,大大减少了手动编写重复的样板代码的工作量。原创 2023-05-22 15:13:54 · 2712 阅读 · 0 评论 -
【Flutter 工程】001-Flutter 状态管理:Riverpod
状态管理处理应用程序数据流动和 UI 更新的关键概念。在 Flutter 应用程序中,状态管理确保应用程序 UI 和数据保持同步,共享和同步数据,并提供良好的代码结构和可维护性。Flutter 提供了作为最基本的状态管理方法。有状态组件可以存储和更新自身状态,适用于简单的场景和局部状态。然而,状态管理复杂性:当组件树庞大且状态需要在多个组件之间共享时,状态管理变得复杂,代码难以理解和维护。性能问题:相比在状态变化时会导致更多组件重建,可能影响应用程序性能,尽管Flutter已经进行了性能优化。原创 2023-05-22 14:29:42 · 1237 阅读 · 0 评论 -
【Flutter 组件】004-基础组件:图片及 ICON
Flutter 中,我们可以通过Image组件来加载并显示图片,Image的数据源可以是asset 、文件、内存以及网络。Image 是一个用于展示图片的组件。支持 JPEG、PNG、GIF、Animated GIF、WebP、Animated WebP、BMP 和 WBMP 等格式。Flutter 中,可以像Web开发一样使用 iconfont,iconfont 即“字体图标”,它是将图标做成字体文件,然后通过指定不同的字符而显示不同的图片。原创 2022-12-14 23:25:54 · 511 阅读 · 0 评论 -
【Flutter 组件】003-基础组件:按钮
即"漂浮"按钮,它默认带有阴影和灰色背景。按下后,阴影会变大。TextButton即文本按钮,默认背景透明并不带阴影。按下后,会有背景色。默认有一个边框,不带阴影且背景透明。按下后,边框颜色会变亮、同时出现背景和阴影(较弱)。IconButton是一个可点击的Icon,不包括文字,默认没有背景,点击后会出现背景。、TextButton、都有一个icon构造函数,通过它可以轻松创建带图标的按钮。原创 2022-12-13 23:12:31 · 552 阅读 · 0 评论 -
【Flutter 组件】002-基础组件:文本与样式
Text用于显示简单样式文本,它包含一些控制文本显示样式的一些属性。TextStyle用于指定文本显示的样式如颜色、字体、粗细、背景等。不同样式的文本组合在一起!Text的所有文本内容只能按同一种样式,如果我们需要对一个 Text 内容的不同部分按照不同的样式显示,这时就可以使用TextSpan,它代表文本的一个“片段”。文本的默认样式!原创 2022-12-12 20:34:36 · 535 阅读 · 0 评论 -
【Flutter 组件】001-关于 Widget 的一切
Flutter 中的 Widget 相当于 Android 里的 View,iOS 里的 UIView。Flutter 中几乎所有的对象都是一个 **widget **;Widget 不仅可以表示UI 元素,还可以表示一些功能性的组件,如用于手势检测的、用于APP主题数据传递的Theme等等;我们将 Widget 统称为组件。界面刷新机制,类似 React当 Widget 状态发生变化,需要更新界面时,框架会先计算从上一个状态转换到下一个状态所需的最小更改,然后再去刷新界面。原创 2022-12-11 11:59:01 · 669 阅读 · 0 评论