- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想从父状态小部件调用子小部件的initState()方法。
这是我的代码:
class ClassA extends StatefulWidget {
@override
_ClassAState createState() => _ClassAState();
}
class _ClassAState extends State<ClassA> {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Column(
children: <Widget>[
ClassB(),
InkWell(
child: Text('Call ClassB initState()'),
onTap: (){
setState(() {});
},
),
],
),
)
,
);
}
}
class ClassB extends StatefulWidget {
@override
_ClassBState createState() => _ClassBState();
}
class _ClassBState extends State<ClassB> {
@override
void initState() {
print('initState in ClassB');
super.initState();
}
@override
Widget build(BuildContext context) {
return Container(
height: 100,
child: Text('Class B'),
);
}
}
在上面我想从ClassA()调用ClassB initState()方法。但是在点击时,它仅调用类B的build方法,但我也想调用initState()。
最佳答案
ClassA和ClassB具有2个不同的内部状态。第一次运行时,将两个小部件插入树中,以便调用每个initState。之后,如果您在ClassA中调用setState,则将更改ClassA状态。如果您查看文档
https://api.flutter.dev/flutter/widgets/State/initState.html
Called when this object is inserted into the tree.
The framework will call this method exactly once for each State objectit creates.
Override this method to perform initialization that depends on thelocation at which this object was inserted into the tree (i.e.,context) or on the widget used to configure this object (i.e.,widget).
关于flutter - 如何在Flutter中从父窗口小部件调用子窗口小部件的initState()方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64677829/
在文档中是这样写的,但我无法理解。 Called when this object is inserted into the tree. The framework will call this me
我正在 initstate 中通过 RestAPI 创建一个企业列表。我需要使用 sharedpreference 值作为其参数之一,但是当我尝试加载数据时,sharepreference 值初始为空
看看这段代码 - 用于获取数据并显示在列表中的小部件: class _MyEventsFragmentState extends State { var events; @override
在我的应用程序中,我有一个抽屉导航,正文根据抽屉中按下的磁贴进行更新。每个类的主体都是相同的,它是一个有状态的小部件并返回一个 ListView 。对于此类的每个实例(以及每个图 block ),我需
我正在使用 initState 并遇到 Navigator 问题: I/flutter ( 5726): The following assertion was thrown building Bui
一直在学习处理flutter中的async函数。我定义了一个 async 函数,并在两个地方调用了它 1。来自 build 函数。 2.来自 initState。 当从 build 函数调用时,函数被
我想在 initState 中创建一个 TextController,然后像处理好 child 一样处理它。但出于某种原因, Controller 在 intiState 之外不可用: class _
我在 initState() 中调用异步函数,但系统实际上等待异步函数的结果。谁能告诉我为什么? 这是我的代码: import 'package:flutter/material.dart'; voi
这个问题在这里已经有了答案: Is there a way to load async data on InitState method? (14 个回答) 2个月前关闭。 Flutter - 有没有
我正在创建 TextEditingController ,并初始化它,我可以做 class _HomePageState extends State { var _controller = Tex
在多次调用的选项卡 initstate() 之间切换。 我的标签栏 A、B、C 和 D 中有 4 个标签。 情况 (1) 如果我像从选项卡 A 切换到选项卡 B 那样切换选项卡,则它工作正常。 情况
我不知道在哪里调用 super.initSate()在 flutter ?在某些代码示例中,它在开头调用,而在其他代码示例中则在结尾调用。有区别吗? 我试图用谷歌搜索,但没有找到关于这个函数调用位置的
我有以下方法: getCalendarEventList() async { print('here we go agsain'); await Firestore.instanc
我是 Flutter 的新手,遇到了一个问题。 我的应用中有一个 Feed 模型,如下所示: import 'package:uuid/uuid.dart'; class Feed { // St
在 StatefulWidget 中制作 AnimationController final 的最佳方法是什么,以下代码会出错。 final AnimationController _controll
我正在 initState(){} 中初始化一个变量: @override void initState() { getDataFromFirestore(); super.ini
我正在开发这个应用程序,您可以在其中导航到带有状态小部件的屏幕,该小部件具有在 initState() 中运行的一堆复杂函数。 由于这些功能,触发导航功能后导航到此屏幕需要将近两秒钟,即非常慢 我的代
我正在使用 Flutter 创建一个应用程序。我想从 firebase 获取数据并显示 GridView 。数据从 firebase 正确获取。 initState() 中的数据获取 但它并没有更新另
initState() 在我路由到的第一个 Widget 上被调用了两次。 我已经删除了 initState() 方法中的所有方法调用和正在完成的工作,以排除它以某种方式调用自身的任何可能性。它所做的
每次我离开一个小部件然后返回到它时,我都会收到对该小部件的 initState 方法的“n+1”次调用。 我的设置与此类似。我从小部件 A 开始,当识别到对卡片的点击时,我们执行 Navigator.
我是一名优秀的程序员,十分优秀!