Flutter 颤振/飞镖重建状态窗口小部件

Flutter 颤振/飞镖重建状态窗口小部件,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,我有以下问题。在包含文本字段的有状态小部件(1)中,调用有状态小部件(2),输出文本。如果在有状态小部件(1)中创建了条目,则有状态小部件(2)应输出当前文本。(所以​​它必须更新) 下面是我的示例代码,不幸的是它不起作用: class _TexfildState extends State<Texfild> { String text; @override Widget build(BuildContext context) { return Column

我有以下问题。在包含文本字段的有状态小部件(1)中,调用有状态小部件(2),输出文本。如果在有状态小部件(1)中创建了条目,则有状态小部件(2)应输出当前文本。(所以​​它必须更新)

下面是我的示例代码,不幸的是它不起作用:

class _TexfildState extends State<Texfild> {   
String text;   
@override   
Widget build(BuildContext context) {
    return Column(
      children: <Widget>[
        TextField(
          onChanged: (str){
            setState(() {
              text = str;
            });

          },
        ),
        Textprint(text) //This widget should reload if str changes!
      ],

   );  
 } 
}

 class Textprint extends StatefulWidget {
 @override
 final String textprint;
 Textprint(this.textprint);

_TextprintState createState() => _TextprintState();
}

class _TextprintState extends State<Textprint> {
  @override
  Widget build(BuildContext context) {
    return Container(
      child: Text(widget.textprint),
    );
  }
}
类_TexfildState扩展状态{
字符串文本;
@凌驾
小部件构建(构建上下文){
返回列(
儿童:[
文本字段(
一旦更改:(str){
设置状态(){
text=str;
});
},
),
Textprint(text)//如果str改变,这个小部件应该重新加载!
],
);  
} 
}
类Textprint扩展StatefulWidget{
@凌驾
最终字符串文本打印;
Textprint(this.Textprint);
_TextprintState createState()=>\u TextprintState();
}
类_TextprintState扩展状态{
@凌驾
小部件构建(构建上下文){
返回容器(
子项:文本(widget.textprint),
);
}
}

您需要做的是用值或所谓的空字符串初始化文本。因为TextPrint小部件无法接收空字符串

String text = '';

尝试打印控制台
小部件。textprint
值位于
\u TextprintState
构建中。它是否在
TextField
的值更改时调用?