gpt4 book ai didi

flutter - 从Flutter中的Sharedpreferences获取语言

转载 作者:行者123 更新时间:2023-12-03 04:56:47 27 4
gpt4 key购买 nike

我想将当前语言保存在变量中,以便在其他页面中使用它。我正在使用带有flutter_translate的shared_preferences。

在我的app.dart中,我有这个:

class TranslatePreferences implements ITranslatePreferences
{
static const String _selectedLocaleKey = 'selected_locale';

@override
Future<Locale> getPreferredLocale() async
{
final preferences = await SharedPreferences.getInstance();

if(!preferences.containsKey(_selectedLocaleKey)) return null;

var locale = preferences.getString(_selectedLocaleKey);
return localeFromString(locale);

}


@override
Future savePreferredLocale(Locale locale) async
{
final preferences = await SharedPreferences.getInstance();

await preferences.setString(_selectedLocaleKey, localeToString(locale));

}


}

如果我打印:
print(TranslatePreferences().getPreferredLocale());

我得到: Instance of 'Future<Locale>'
我如何管理它以获得getPreferredLocale()的值并将其存储在变量中?

谢谢

最佳答案

final Future<String> futureValue = Future.value("Hello !");

中打印 future 值同步
void main() {
futureValue.then((value) => print(value)); // Hello !
}

中打印 future 值异步
void main() async {
final value = await futureValue;
print(value); // Hello !
}

关于flutter - 从Flutter中的Sharedpreferences获取语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60450415/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com