我有 main.dart、a.dart 和 b.dart。当我运行 main.dart 时,a 和 b 的结果都显示在一页中。但我希望 a 和 b 的结果显示在不同的页面上。所以我使用 MaterialPageRoute 使 a 在第一页上可见, b 在第二页上可见。但是发生了错误。
命名参数“记录”是必需的,但没有相应的参数。
我的猜测是a和b都是用statefulwidget写的,所以出现了错误。对此有何建议?
a.dart 示例
class Recorder extends StatefulWidget {
final Function save;
const Recorder({Key? key, required this.save}) : super(key: key);
@override
_RecorderState createState() => _RecorderState();
}
class _RecorderState extends State<Recorder> {
b.dart 示例
class Records extends StatefulWidget {
final List<String> records;
const Records({
Key? key,
required this.records,
}) : super(key: key);
@override
_RecordsState createState() => _RecordsState();
}
class _RecordsState extends State<Records> {
main.dart 示例
class HomePage extends StatefulWidget {
final String _appTitle;
const HomePage({Key? key, required String title})
: assert(title != null),
_appTitle = title,
super(key: key);
@override
_HomePageState createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
main.dart 示例(错误)
@override
Widget build(BuildContext context) {
return Scaffold(
floatingActionButton: FloatingActionButton(
onPressed: (){
},
child: InkWell(child: Icon(Icons.mic),onTap: (){
Navigator.push(
context,
MaterialPageRoute(builder: (context) => Records());
},),
),