Сначала определите переменные для текстов
String nameText = '';
String schoolText = '';
Назначьте их виджетам
ListTile(title: Text(nameText)
subtitle: Text(schoolText),),
Теперь при чтении из функции sharedpref установите эти
_nameRetriever() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
setState(){
nameText = prefs.getString('name') ?? '';
schoolText = prefs.getString('school') ?? '';
}
print(targetPrice);
print(instrumentPair);
}
РЕДАКТИРОВАТЬ
Это просто чтобы продемонстрировать, как это работает.Я сделал функцию сохранения будущей функцией, просто чтобы убедиться, что я прочитал после сохранения .. Это не нужно, если вы делаете сохранение и чтение одновременно
class Home extends StatefulWidget {
@override
_HomeState createState() => _HomeState();
}
class _HomeState extends State<Home> {
@override
void initState() {
super.initState();
_nameSaver().then((_) {
_nameRetriever();
});
}
@override
Widget build(BuildContext context) {
return Scaffold(body: Container());
}
Future<String> _nameSaver() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setString('name2', 'asdsadasd');
prefs.setString('school2', 'asdasdas');
return 'saved';
}
_nameRetriever() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
final name = prefs.getString('name2') ?? '';
final school = prefs.getString('school2') ?? '';
print(name);
print(school);
}
}