如何在颤振中的两个屏幕之间导航数据?

时间:2021-05-09 12:47:59

标签: flutter dart

我有 homeScreen,每隔一个屏幕就会返回它。 并且其中一个屏幕具有来自 TextField 的参数,我在主屏幕中需要这些参数,如何将这些参数导航到主屏幕? 注意:当我使用构造函数时,其他屏幕在导航到 Home 的行中显示错误,因为没有参数。

2 个答案:

答案 0 :(得分:1)

您可以在构造函数中使用可选参数:

Homepage({String textfield});

并在您的主页上使用它(不要忘记此值可以为空)

或者您需要使用某种状态管理与 ValueNotifiers

答案 1 :(得分:0)

可以使用参数传递数据

    class XYZ extends StatelessWidget {
      final TextEditingController textController = TextEditingController();
    
      void navigationFunction() {
//send the data from XYZ to HomePage
        Navigator.push(
          context,
          MaterialPageRoute(
              builder: (context) => HomePage(textValue: textController.text)),
        );
      }
    }
        
    class HomePage extends StatelessWidget {
      const HomePage({this.textValue});
      final String textValue; //use this textValue in HomePage
    
      @override
      Widget build(BuildContext context) {
        return Scaffold();
      }
    }
相关问题