错误:无法在需要 const 表达式的地方调用非“const”构造函数

Bes*_*zer 5 dart flutter

我采用“BottomNavigationBar”示例在其上构建我的应用程序。我试图实现一个 RaisedButton 像这样:

      child: Container(
        child: Column(
          children: <Widget>[
            RaisedButton(
              child: Text('Montag'),
            )
          ],
        ),
      ),
    ), 
Run Code Online (Sandbox Code Playgroud)

并收到以下错误消息:

lib/main.dart:48:16: Error: Cannot invoke a non-'const' constructor where a const expression is expected.
Try using a constructor or factory that is 'const'.
       child: Column(
              ^^^^^^
lib/main.dart:47:14: Error: Cannot invoke a non-'const' constructor where a const expression is expected.
Try using a constructor or factory that is 'const'.
     child: Container(
            ^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)

我能做什么?我知道这可能是一个不好的问题,但任何帮助表示赞赏。

编辑:根据要求,这里有更多代码:

class _MyStatefulWidgetState extends State<MyStatefulWidget> {
  int _selectedIndex = 0;
  static const TextStyle optionStyle =
  TextStyle(fontSize: 30, fontWeight: FontWeight.bold);
  static const List<Widget> _widgetOptions = <Widget>[
    Text(
      'Index 0: Startseite',
      style: optionStyle,
    ),
    const Center(
      child: const Container(
        child: Column(
          children: <Widget>[
            RaisedButton(
              child: Text('Montag'),
            )
          ],
        ),
      ),
    ),
    const WebView(
      initialUrl: 'mygoogledrivelink',
      javascriptMode: JavascriptMode.unrestricted,
    ),
  ];
Run Code Online (Sandbox Code Playgroud)

Cla*_*edi 9

您没有显示它,但您肯定在小部件树中具有更高的 const 小部件构造函数,这会导致任何子小部件都需要使用const.

不幸的是不是所有的小部件有一个const构造函数,Container并且Column是两个例子。您将无法将这些小部件构造为构造函数的子项const

您可以尝试找到所有需要const构造函数的小部件的替代品,也可以删除const父小部件中的关键字。