【发布时间】:2021-11-26 15:08:04
【问题描述】:
当用户点击 App 的按钮(在其他小部件中)时,我想重新运行小部件的初始化状态。
我尝试了以下代码但没有成功:
onPressed:(){
ExampleWidget();
}
解释: 当用户单击按钮时,我想重新运行 Widget。该按钮在应用程序的其他小部件中定义示例代码如下:
class ExampleWidget extends StatefulWidget {
const ExampleWidget({Key? key}) : super(key: key);
@override
State<ExampleWidget> createState() => ExampleWidgetState();
}
class ExampleWidgetState extends State<ExampleWidget> {
Code between this Brackets
}
我想重新运行这个小部件。我正在尝试以下方法:
class OtherWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
floatingActionButton: FloatingActionButton(
onPressed:() { ExampleWidget() }
,child:Icon(Icons.delete)
,),),}
如果你知道这个问题的答案就回答这个问题..
【问题讨论】:
-
为什么要在init state中声明函数?
-
我没有在 initState 中声明它,我只运行它 + 我还在 init State 中添加了一个 setState 命令,所以这就是为什么运行 init state 至关重要。
-
所以你可以运行这个函数并在你的 onPressed 中调用 setState?抱歉,我认为没有必要再次运行 initState
-
请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
标签: flutter dart widget flutter-layout rebuild