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

关于flutter中 initState() 与 setState() 用法

  1. initState()函数是在组件渲染之前执行的。在Flutter中,initState()StatefulWidget的生命周期方法之一,在调用build()方法之前被调用。
  2. 当创建一个StatefulWidget并将其添加到组件树中时,Flutter会实例化该组件的状态对象,并在调用initState()方法后再调用build()方法来构建UI。
  3. initState()通常用于执行一些初始化操作,比如数据获取、订阅事件、启动定时器等。它只会被调用一次,在组件的整个生命周期中只执行一次。
  4. 一旦initState()被调用并完成后,就会立即调用build()方法来构建UI。所以,如果你希望在UI构建之前执行某些操作,可以放在initState()中。
  5. 值得注意的是,在initState()中不要执行耗时的操作或阻塞UI线程的操作,因为这可能导致应用程序卡顿。如果需要进行异步操作,可以使用Futureasync/await等方式来处理。
  6. setState()方法不会触发initState()的重新执行。当调用setState()时,它会通知Flutter框架重新构建相关的组件树,并调用build()方法来更新UI。
  7. initState()方法只在初始化组件时调用一次,在组件的整个生命周期中不会再次执行。它主要用于执行一些初始化操作,比如数据获取、订阅事件、启动定时器等。
  8. 当你调用setState()方法后,Flutter会检测到状态发生了变化,并执行与该组件相关的build()方法来生成新的UI。在build()方法中,你可以使用新的状态值进行UI渲染。
  9. 所以,当你在setState()中更新了状态数据后,Flutter将会重新构建相关的组件,但不会重新执行initState()方法。initState()只会在组件初始创建时被调用一次。
http://www.lryc.cn/news/139210.html

相关文章:

  • 智能电话机器人是如何自主学习的
  • 【Rust】Rust学习 第十八章模式用来匹配值的结构
  • 我的学习笔记:数据处理
  • GB28181国标平台测试软件NTV-GBC(包含服务器和模拟客户端)
  • 云原生:重塑企业的技术疆界
  • 华为星闪,一项将 “ 更稳 WiFi ” 和 “ 更好蓝牙 ” 融合起来的通信标准
  • IDEA创建Mybatis格式XML文件
  • 二叉树中的最大路径和-递归
  • Python if-else 速记
  • Python使用内置的json模块来处理JSON数据
  • 亿赛通电子文档安全管理系统 RCE漏洞
  • 信息安全面试题合集
  • vue 简单实验 自定义组件 传参数 props
  • 目标检测笔记(十一):如何结合特定区域进行目标检测(基于OpenCV的人脸检测实例)
  • PID直观感受简述
  • Tomcat运行后localhost:8080访问自己编写的网页
  • 传感网应用开发1+X实训室建方案
  • PDF校对:让您的文件无瑕疵
  • SpringBoot--解决空字符串转枚举异常
  • Redis的常用数据类型详解
  • jpa里IdentityGenerator和IncrementGenerator的区别
  • 基于element UI 实现 table 列 拖拽
  • (GPT、GEE)遥感云大数据、洪涝灾害监测、红树林遥感制图、河道轮廓监测、洪涝灾害监测、GRACE重力卫星、源遥感影像
  • vue中实现将页面或者div内容导出为pdf格式
  • Ubuntu 配置国内源
  • 分布式核心知识
  • 【JMeter】常用线程组设置策略
  • 【数据结构】回溯算法公式化解题 leetcode经典题目带刷:全排列、组合、子集
  • WPF基础入门-Class3-WPF数据模板
  • js将搜索的关键字加颜色