From c4b95d70840a79458b07fc413cfa479db99f5c70 Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Mon, 24 Feb 2025 21:25:12 +0800 Subject: [PATCH] :bug: Fix account settings screen error cause by locale --- lib/screens/account/account_settings.dart | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/screens/account/account_settings.dart b/lib/screens/account/account_settings.dart index 4c6fee4..25d94f5 100644 --- a/lib/screens/account/account_settings.dart +++ b/lib/screens/account/account_settings.dart @@ -54,14 +54,20 @@ class AccountSettingsScreen extends StatelessWidget { child: DropdownButton2( isExpanded: true, items: [ - ...EasyLocalization.of(context)!.supportedLocales.mapIndexed((idx, ele) { + ...EasyLocalization.of(context)! + .supportedLocales + .mapIndexed((idx, ele) { return DropdownMenuItem( value: Locale.parse(ele.toString()), - child: Text('${ele.languageCode}-${ele.countryCode}').fontSize(14), + child: Text('${ele.languageCode}-${ele.countryCode}') + .fontSize(14), ); }), ], - value: ua.user?.language != null ? Locale.parse(ua.user!.language) : Locale.parse('en-US'), + value: ua.user?.language != null + ? (Locale.tryParse(ua.user!.language) ?? + Locale.parse('en-US')) + : Locale.parse('en-US'), onChanged: (Locale? value) { if (value == null) return; _setAccountLanguage(context, value);