El *_*bre 5 localization flutter
我正在尝试使用本地化获取移动国家代码和语言代码
Widget build(BuildContext context) {
Locale myLocale = Localizations.localeOf(context);
print(myLocale.countryCode);
print(myLocale.languageCode);
return MaterialApp(
title: 'Title',
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: LoginPage(),
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
supportedLocales: [
Locale('es' 'ES'),
],
);
}
Run Code Online (Sandbox Code Playgroud)
但是返回“未找到本地化祖先”。有人知道这样做的正确方法是什么?
Maz*_*him 12
使用LocaleResolutionCallback来获得设备的语言环境:
Widget build(BuildContext context) {
Locale myLocale ;
return MaterialApp(
title: 'Title',
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: LoginPage(),
localeResolutionCallback: (deviceLocale, supportedLocales) {
myLocale = deviceLocale ; // here you make your app language similar to device language , but you should check whether the localization is supported by your app
print(myLocale.countryCode);
print(myLocale.languageCode);
}
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
],
supportedLocales: [
Locale('es' 'ES'),
],
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5342 次 |
| 最近记录: |