initState()函数是在组件渲染之前执行的。在Flutter中,initState()是StatefulWidget的生命周期方法之一,在调用build()方法之前被调用。- 当创建一个
StatefulWidget并将其添加到组件树中时,Flutter会实例化该组件的状态对象,并在调用initState()方法后再调用build()方法来构建UI。 initState()通常用于执行一些初始化操作,比如数据获取、订阅事件、启动定时器等。它只会被调用一次,在组件的整个生命周期中只执行一次。- 一旦
initState()被调用并完成后,就会立即调用build()方法来构建UI。所以,如果你希望在UI构建之前执行某些操作,可以放在initState()中。 - 值得注意的是,在
initState()中不要执行耗时的操作或阻塞UI线程的操作,因为这可能导致应用程序卡顿。如果需要进行异步操作,可以使用Future、async/await等方式来处理。 setState()方法不会触发initState()的重新执行。当调用setState()时,它会通知Flutter框架重新构建相关的组件树,并调用build()方法来更新UI。initState()方法只在初始化组件时调用一次,在组件的整个生命周期中不会再次执行。它主要用于执行一些初始化操作,比如数据获取、订阅事件、启动定时器等。- 当你调用
setState()方法后,Flutter会检测到状态发生了变化,并执行与该组件相关的build()方法来生成新的UI。在build()方法中,你可以使用新的状态值进行UI渲染。 - 所以,当你在
setState()中更新了状态数据后,Flutter将会重新构建相关的组件,但不会重新执行initState()方法。initState()只会在组件初始创建时被调用一次。
关于flutter中 initState() 与 setState() 用法
Jushden2023-08-29 10:23
相关推荐
程序员老刘1 天前
跨平台开发地图:四月风暴前夕,你该怎么选?| 2026年4月MakeZero1 天前
Flutter那些事-PageViewLanren的编程日记1 天前
Flutter鸿蒙应用开发:数据加密功能实现实战,全方位保护用户隐私数据梦想不只是梦与想1 天前
flutter 与 Android iOS 通信?以及实现原理(一)2601_949593651 天前
Flutter OpenHarmony 三方库 path_provider 文件路径获取适配详解哈撒Ki1 天前
快速入门 Dart 语言小蜜蜂嗡嗡1 天前
flutter 自定义走马灯,内部为Widget控件的走马灯效果二:横向无限匀速滚动+每个Item与屏幕左侧对齐时,停靠3秒再继续滚动浮芷.1 天前
生命科学数据视界防御:基于鸿蒙Flutter陀螺仪云台与三维体积光栅的视轴锁定架构千码君20161 天前
Flutter:在win10上第一次安装和尝试开发记录浮芷.1 天前
微观搜打撤:基于鸿蒙flutter的内存快照算法的局内外状态隔离与高阶背包系统设计