【发布时间】:2019-12-05 13:55:48
【问题描述】:
我正在使用带有路由器的 MaterialApp 导航到下一个屏幕,我正在使用它导航到另一个屏幕并传递参数:
onTap: () => Navigator.of(context).pushNamed(
DetailDebt.routedName,
arguments: {
'receiverName': debtListView.receiverName,
'amount': debtListView.amount,
'dateReturn': debtListView.dateReturn,
'pathImage': debtListView.imageReceiver,
'signatureImage': debtListView.imageSignature,
},
),
在下一个屏幕中,我将创建变量来存储这样的参数:
final Map arguments = ModalRoute.of(context).settings.arguments as Map;
return Scaffold(
body: Container(
child: Text(
arguments['receiverName'],
),
),
);
我的问题是,如何将参数存储在变量中,然后我可以这样称呼它:
// I want Store the Arguments in the variable , so i can call it something like this :
final Map arguments = ModalRoute.of(context).settings.arguments as Map;
final loadedArguments = arguments; // <= ???
return Scaffold(
body: Container(
child: Text(
loadedArguments.receiverName,
),
),
);
如果你需要,它就是我的模特:
import 'dart:typed_data';
import 'package:hive/hive.dart';
part 'debt_model_hive.g.dart';
@HiveType()
class DebtModelHive extends HiveObject {
@HiveField(0)
String receiverName;
@HiveField(1)
int amount;
@HiveField(2)
DateTime dateReturn;
@HiveField(3)
String imageReceiver;
@HiveField(4)
Uint8List imageSignature;
DebtModelHive({
this.receiverName,
this.amount,
this.dateReturn,
this.imageReceiver,
this.imageSignature,
});
// Hive fields go here
}
谢谢
【问题讨论】: