【发布时间】:2023-03-14 08:22:01
【问题描述】:
我正在尝试从 .txt 文件中逐行加载不同的值。
我正在从资产加载文件,该文件已在 pubspec.yaml 中注册。
Future<String> getFileData() async {
return await rootBundle.loadString('assets/files/text.txt');
}
因为这会返回一个长字符串,所以我将其拆分为一个列表:
void doStuff() async {
await getFileData().then((value) => value.split('\n').forEach((element) {
exampleQuestions.add(element);
}));
}
此方法在我的类中调用 - 构造函数通过命名路由从我的 Main 调用:
GameOver.routeName: (context) => GameOver(),
'/game': (context) => Game(
),
},
exampleQuestion get 填充了 doStuff() - 方法(已经检查过),但在 _GameState 类中丢失了它的值,其中想要访问列表的小部件返回一个超出索引的异常。
但是,如果我快速重新加载我的应用程序,则值设置正确。如果我然后单击按钮再次继续,则在我快速重新加载之前没有任何变化。
任何提示都非常感谢..
【问题讨论】:
-
向列表添加元素时尝试使用
setState方法