我知道我可以使用plot.new()
par(mar=c(5,7,5,3))
matplot(percs, type="l",
main = "Occurence of First Letters of Names in Females, 1931-2010",
xlab = "Year",
ylab = "",
cex.axis=0.8,
cex.lab=1.1,
las=1,
xaxt="n",
col="gray")
mtext("Percent of \n All Names", side = 2, line = 2, las =1, cex=1.1)
axis(1, at=seq(1, 80, 10), labels=seq(1931, 2010, 10))
和Future.delayed()
,但是由于我每天都在工作,所以我不知道这些方法是否是最有效的实现方式。
此外,我认为关闭应用程序将是一个重要因素,因为它可能会重置Timer
和Future.delayed()
。
因此我使用了DateTime.now(),但是它不起作用,因为每次用户登陆到此页面时,都会给出变量 dateTime 和 dateTimeHolder 再次Timer
.-。
这就是我所拥有的:
DateTime.now()
有什么想法吗? 如果需要更多信息,请告诉我!
答案 0 :(得分:1)
您可以做的就是将dateTimeHolder
设置后立即保存到SharedPreferences中。这样,可以在应用重启时保存值。
Here是Flutter Cookbook上的一篇很棒的文章,内容涉及使用键/值存储的持久性。
您只需使用它来读写dateTimeHolder
:
final TRIGGER_DATE_KEY = "TRIGGER_DATE_KEY";
void storeTriggerDate(DateTime time) async {
SharedPreferences preferences = await SharedPreferences.getInstance();
preferences.setString(TRIGGER_DATE_KEY, time.toIso8601String());
}
Future<DateTime> readTriggerDate() async {
SharedPreferences preferences = await SharedPreferences.getInstance();
String iso = preferences.getString(TRIGGER_DATE_KEY);
return DateTime.parse(iso);
}