0

对不起,伙计们,我试图建立一个新页面,但其中包含变量“nextcode”。所以在新页面中,它将显示 nextcode 文本

                    onTap: () {
                      Navigator.push(
                          context,
                          MaterialPageRoute(
                              builder: (context) => Lemari(nextcode)));
                    },

但在“Widget build(String Kode){”行中,它必须像这样“Widget build(BuildContext context){”

class Lemari extends StatelessWidget {

  @override
   Widget build(String Kode) {
    return Scaffold(
        appBar: AppBar(
           backgroundColor: Colors.blue[900],
           title: Text('this is th next page'),

        ),
         backgroundColor: Colors.white,
         body: Center(
          child: Column(
            children: [
            Container(height: 100, width: 100, color: Colors.red, child: Text('hhe'),),
            ]
          ),
         ),
    );
  }
}

那么有人可以帮助我吗?请 :(

4

2 回答 2

0

您不必更改构建方法参数,而是应该在小部件中添加一个新参数并要求它

示例 const MyPageView({Key?key}) : super(key: key);

在这里您可以添加另一个参数。然后在类中定义该参数..因此,当您创建新的 MyPageView 时,您将必须传递新添加的参数

再见 :)

于 2021-06-06T23:14:11.507 回答
0

您的代码应该有编译器错误

Lemari,你永远不会声明nextcode和构造函数也没有参数nextcode

你可以这样尝试,添加

class Lemari extends StatelessWidget {
  final String nextcode;
  const Lemari({Key key, this.nextcode}) : super(key: key);

  @override
  Widget build(BuildContext context) {}
}

如果你nextcodeString

于 2021-06-07T03:36:11.843 回答