我有一个字符串列表,我想每天随机显示一个项目。我怎么能和Flutter一起做这件事?谢谢我认为正确的方法是使用SharePreferences和DateTime,但我似乎不能这样做。我该怎么做?谢谢你
f1tvaqid1#
有很多方法。我会从我的Angular 告诉你解决方案:
*输入:(我认为)引用的列表。*输出:每天显示1个随机报价。解决方案:**1/**使用2个SharePreferences键存储日期和报价:
SharePreferences
final SharedPreferences prefs = await SharedPreferences.getInstance(); // read data int savedDay = prefs.getInt('savedDay') ?? 0; String savedQuote = prefs.getString('savedQuote') ?? "";
**2/**使用DateTime获取当前日期。检查当前日期是否不等于保存日期(这意味着这是新的一天,我们需要重新创建新的内容),然后从列表中获取新的引用并写入数据。
DateTime
int currentDay = DateTime.now().day; if (currentDay != savedDay) { final SharedPreferences prefs = await SharedPreferences.getInstance(); // write data savedDay = currentDay; await prefs.setInt('savedDay', currentDay); savedQuotes = lstQuotes[Random().nextInt(lstQuotes.length)]; await prefs.setString('savedQuotes', savedQuotes); }
祝你好运
1条答案
按热度按时间f1tvaqid1#
有很多方法。我会从我的Angular 告诉你解决方案:
*输入:(我认为)引用的列表。
*输出:每天显示1个随机报价。
解决方案:
**1/**使用2个
SharePreferences
键存储日期和报价:**2/**使用
DateTime
获取当前日期。检查当前日期是否不等于保存日期(这意味着这是新的一天,我们需要重新创建新的内容),然后从列表中获取新的引用并写入数据。祝你好运