flutter - 无状态小部件列表的常量值无效

标签 flutter android-studio dart

    class HomeScreen extends StatelessWidget {
  const HomeScreen({Key? key}) : super(key: key);

  final List pages = const [
    MessagesPage(),
    NotificationsPage(),
    CallsPage(),
    ContactsPage(),
  ];

  @override
  Widget build(BuildContext context) {
    return const Scaffold(
      body: pages[0],
      bottomNavigationBar: _BottomNavigationBar(),
    );
  }
}

如果我像 body: MessagesPage() 那样直接调用 Widget,则 body:pages[0] 中会出现无效常量值错误,那么就不会出现错误。 我尝试将所有内容设为常量,但没有任何帮助。

Flutter新版本有什么更新还是我做错了什么?

最佳答案

删除 const 关键字:

  class HomeScreen extends StatelessWidget {
  const HomeScreen({Key? key}) : super(key: key);

  final List pages = const [
    MessagesPage(),
    NotificationsPage(),
    CallsPage(),
    ContactsPage(),
  ];

  @override
  Widget build(BuildContext context) {
    return Scaffold(//remove const keyword here
      body: pages[0],
      bottomNavigationBar: _BottomNavigationBar(),
    );
  }
}

关于flutter - 无状态小部件列表的常量值无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70360717/

相关文章:

flutter - 我如何知道何时在 TextFormField 上按下键盘键?

flutter - Dart 中的 int 类型是值类型还是引用类型?

ios - 修复与 platform_strong.dill 相关的错误

android - AWS Amplify Flutter 的身份验证注册功能在通过 Android APK 部署时不起作用

flutter - 如何在 SingleChildScrollView 中插入 Expanded

java - Git push through Android studio 卡死了

flutter - 流未在另一个流监听函数中更新

java - 无法访问生成的java文件

android - 设备文件资源管理器和数据库修改时间

dart - Dart :在函数为输入时声明函数返回类型