Flutter本地化默认语言

4jb9z9bj  于 2023-03-24  发布在  Flutter
关注(0)|答案(2)|浏览(150)

我在使用flutter_localizations为我的flutter应用程序配置默认语言时遇到了一些问题。目前,我有两种语言,瑞典语和英语。如果手机的语言设置为瑞典语,应用程序将使用瑞典语,英语也是如此。然而,当它不是这两种语言时,应用程序将重新使用以前使用的任何语言。相反,我希望当手机的语言既不是英语也不是瑞典语时,应用程序总是求助于英语。根据我的理解,flutter_localizations应该从一开始就将英语作为默认值,或者根据我的supportedLocales列表的排序方式,排序如下:['en','sv,].有没有人有同样的问题或知道一个变通办法?感谢任何帮助:)

localizationsDelegates: [
          AppLocalizations.delegate,
          GlobalMaterialLocalizations.delegate,
          GlobalWidgetsLocalizations.delegate,
          GlobalCupertinoLocalizations.delegate,
        ],
        supportedLocales: [
          const Locale('en', ''),
          const Locale('sv', ''),
        ],
pb3s4cty

pb3s4cty1#

希望下面的代码片段能对你有所帮助。

if(PhoneLang == "sv"){
   //Select Language Swedish
}else{

   //In any other cases Select Language English
}
6qqygrtg

6qqygrtg2#

您可能已经找到了答案,但如果不是这样,请尝试将以下回调添加到您的MaterialApp

localeResolutionCallback: (locale, supportedLocales) {
          for (final supportedLocale in supportedLocales) {
            if (supportedLocale.languageCode == locale.languageCode) {
              return supportedLocale;
            }
          }

          return supportedLocales.first;
        },

相关问题