尝试在材质应用程序中使用文本时,AppBar 中的 Flutter 非常量构造函数错误
Posted
技术标签:
【中文标题】尝试在材质应用程序中使用文本时,AppBar 中的 Flutter 非常量构造函数错误【英文标题】:Flutter non-const constructor error within AppBar when trying to use text inside material app 【发布时间】:2022-01-24 01:08:19 【问题描述】:您好,我有一个简单的问题,我在这里做错了什么?我正在尝试在 Scaffold 中创建一个 AppBar,但是当我尝试使用 Text 时,它似乎不起作用并说要添加一个 Const,但是当我这样做时,它并不能解决问题。
很抱歉,如果已经有这方面的信息,我只是不知道要查找的具体条款来解决这个问题。我知道您可以将 AppBar 放在 void main() 中,但是我正在按照教程进行操作,并且希望以类似的方式进行操作。
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget
const MyApp(Key? key) : super(key: key);
@override
Widget build(BuildContext context)
return const MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('My First App'),
),
body: Text('This is the body of text.')
),
);
这是输出的错误:
12:25:错误:无法调用非“const”构造函数,其中 const 表达式是预期的。尝试使用构造函数或工厂 '常量'。 应用程序栏:常量应用程序栏( ^^^^^^
新错误:
../../runtime/platform/allocation.cc:14:错误:内存不足。 版本=2.14.4(稳定)(2021 年 10 月 13 日星期三 11:11:32 +0200)开启 “windows_x64”pid=24408,线程=30512, 隔离组=(无)(0000000000000000),隔离=(无)(0000000000000000) 隔离指令=0,vm_instructions=7ff65bad4f10 pc 0x00007ff65bcdaa42 fp 0x00000056bb8ff3c0 Dart_IsPrecompiledRuntime+0x21a352 -- DumpStackTrace 结束
FAILURE:构建失败并出现异常。
其中:脚本'C:\Users\A\Documents\flutter\packages\flutter_tools\gradle\flutter.gradle' 行:1005
出了什么问题:任务 ':app:compileFlutterBuildDebug' 执行失败。
尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。Process 'command 'C:\Users\A\Documents\flutter\bin\flutter.bat'' 以非零退出值 -1073740791 结束
【问题讨论】:
尝试从 MaterialApp 中删除 'const'。替换:return const MaterialApp 与 return MaterialApp 【参考方案1】:只需在 Material 应用前删除 const
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget
const MyApp(Key? key) : super(key: key);
@override
Widget build(BuildContext context)
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('My First App'),
),
body: Text('This is the body of text.')
),
);
【讨论】:
但是在 Text 小部件之前使用 const 很不错 它现在给了我一个新错误,我根本无法运行该应用程序。顺便说一句,我正在使用 android Studio。 我已经在顶部的第一个帖子中添加了有关新错误的详细信息,您可以看看吗? @ashley 对于您需要创建单独问题的新错误。请遵守so规则meta.***.com/questions/371614/… 抱歉,谢谢。以上是关于尝试在材质应用程序中使用文本时,AppBar 中的 Flutter 非常量构造函数错误的主要内容,如果未能解决你的问题,请参考以下文章
添加带有材质表的组件更改 Material-UI AppBar 样式
[Material appbar存在时,Android Studio布局预览不起作用
Flutter:不使用AppBar时如何在Android和iOS上更改状态栏文本颜色[重复]