【发布时间】:2022-07-26 05:53:52
【问题描述】:
【问题讨论】:
-
在你的终端(根项目内部)尝试
flutter clean然后flutter pub get。 -
不要上传您的代码截图,尝试将其复制/粘贴到您的问题中。关于您的问题,艾迪生的回答应该可以解决您的问题。
-
在 AppBar 小部件之前使用 const 关键字
【问题讨论】:
flutter clean 然后flutter pub get。
当您添加 title:Text(..) 时,AppBar 不再是 const。所以父MaterialApp不能是const。
你可以的
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(
title: const Text("this is te"),
),
),
);
}
【讨论】:
您的代码将在错误时显示诊断消息: const_with_non_const
// correct
import 'package:flutter/material.dart';
void main() {
runApp(
const MaterialApp(
home: Scaffold(),
),
);
}
// fail
import 'package:flutter/material.dart';
void main() {
runApp(
const MaterialApp(
home: Scaffold(
appBar: AppBar(),
),
),
);
}
虽然Text('AppBar Demo') 是一个常量,但最好在它之前添加常量。
// not preferred
import 'package:flutter/material.dart';
void main() {
runApp(
MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('AppBar Demo'),
),
),
),
);
}
// preferred
import 'package:flutter/material.dart';
void main() {
runApp(
MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('AppBar Demo'),
),
),
),
);
}
【讨论】: