From 3df861eab7a27cdf3c79cf5955b7880d7fe26683 Mon Sep 17 00:00:00 2001 From: lxm <1274844347@qq.com> Date: Sun, 4 Jan 2026 21:22:48 +0800 Subject: [PATCH] =?UTF-8?q?refactor(settings):=20=E5=B0=86=E8=AF=AD?= =?UTF-8?q?=E8=A8=80=E5=88=97=E8=A1=A8=E6=8F=90=E5=8F=96=E5=88=B0=E5=8D=95?= =?UTF-8?q?=E7=8B=AC=E7=9A=84=E6=95=B0=E6=8D=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将原本在控制器中硬编码的语言列表提取到单独的settings_language_data.dart文件中 --- .../controllers/settings_controller.dart | 66 +------------------ .../models/settings_language_data.dart | 65 ++++++++++++++++++ lib/modules/settings/views/settings_view.dart | 2 - 3 files changed, 67 insertions(+), 66 deletions(-) create mode 100644 lib/modules/settings/models/settings_language_data.dart diff --git a/lib/modules/settings/controllers/settings_controller.dart b/lib/modules/settings/controllers/settings_controller.dart index f8a156d0d..245ac4e48 100644 --- a/lib/modules/settings/controllers/settings_controller.dart +++ b/lib/modules/settings/controllers/settings_controller.dart @@ -12,76 +12,14 @@ import '../../../core/translations/app_translations.dart'; import '../../../data/services/network/dio_manager.dart'; import '../../../routes/app_routes.dart'; import '../models/language_model.dart'; +import '../models/settings_language_data.dart'; import '../../../data/services/language_manager.dart'; import '../../../data/services/version_update_service.dart'; import '../../common/widgets/version_update_dialog.dart'; class SettingsController extends GetxController { // 语言设置 - final List languageList = [ - LanguageModel( - name: 'followingSystem', alias: '', value: 'system'), // 跟随系统.tr - LanguageModel(name: 'english', alias: 'English', value: 'en_US'), // 英语.tr - LanguageModel(name: 'chinese', alias: '中文', value: 'zh_CN'), // 中文.tr - LanguageModel( - name: 'traditionalChinese', alias: '繁體中文', value: 'zh_TW'), // 添加繁体中文 - LanguageModel( - name: 'traditionalChineseHK', - alias: '繁體中文(HK)', - value: 'zh_HK'), // 添加香港繁体中文 - LanguageModel( - name: 'spanish', alias: 'Español', value: 'es_ES'), // 添加西班牙语选项 - LanguageModel( - name: 'portuguese', alias: 'Português', value: 'pt_PT'), // 添加葡萄牙语 - LanguageModel(name: 'japanese', alias: '日本語', value: 'ja_JP'), // 添加日语选项 - LanguageModel(name: 'korean', alias: '한국어', value: 'ko_KR'), // 添加韩语选项 - LanguageModel(name: 'french', alias: 'Français', value: 'fr_FR'), // 添加法语选项 - LanguageModel(name: 'german', alias: 'Deutsch', value: 'de_DE'), // 添加德语选项 - LanguageModel(name: 'russian', alias: 'Русский', value: 'ru_RU'), // 添加俄语选项 - LanguageModel(name: 'arabic', alias: 'العربية', value: 'ar_SA'), // 阿拉伯语 - LanguageModel(name: 'persian', alias: 'فارسی', value: 'fa_IR'), // 波斯语 - - LanguageModel( - name: 'vietnamese', alias: 'Tiếng Việt', value: 'vi_VN'), // 添加越南语选项 - LanguageModel( - name: 'italian', alias: 'Italiano', value: 'it_IT'), // 添加意大利语选项 - LanguageModel( - name: 'hindi', alias: 'हिन्दी', value: 'hi_IN'), // 添加印度语(印地语)选项 - LanguageModel( - name: 'indonesian', - alias: 'Bahasa Indonesia', - value: 'id_ID'), // 添加印尼语选项 - LanguageModel(name: 'thai', alias: 'ไทย', value: 'th_TH'), // 添加泰语选项 - LanguageModel( - name: 'malay', alias: 'Bahasa Melayu', value: 'ms_MY'), // 添加马来语选项 - LanguageModel(name: 'turkish', alias: 'Türkçe', value: 'tr_TR'), // 添加土耳其语选项 - LanguageModel(name: 'polish', alias: 'Polski', value: 'pl_PL'), // 添加波兰语选项 - LanguageModel(name: 'filipino', alias: 'Filipino', value: 'tl_PH'), // 菲律宾语 - LanguageModel(name: 'dutch', alias: 'Nederlands', value: 'nl_NL'), // 荷兰语 - LanguageModel(name: 'swedish', alias: 'Svenska', value: 'sv_SE'), // 瑞典语 - LanguageModel(name: 'danish', alias: 'Dansk', value: 'da_DK'), // 丹麦语 - LanguageModel(name: 'finnish', alias: 'Suomi', value: 'fi_FI'), // 芬兰语 - LanguageModel(name: 'czech', alias: 'Čeština', value: 'cs_CZ'), // 捷克语 - LanguageModel(name: 'hungarian', alias: 'Magyar', value: 'hu_HU'), // 匈牙利语 - LanguageModel(name: 'norwegian', alias: 'Norsk', value: 'nb_NO'), // 挪威语 - LanguageModel(name: 'romanian', alias: 'Română', value: 'ro_RO'), // 罗马尼亚语 - LanguageModel( - name: 'ukrainian', alias: 'Українська', value: 'uk_UA'), // 乌克兰语 - LanguageModel(name: 'greek', alias: 'Ελληνικά', value: 'el_GR'), // 希腊语 - LanguageModel( - name: 'bulgarian', alias: 'Български', value: 'bg_BG'), // 保加利亚语 - LanguageModel(name: 'croatian', alias: 'Hrvatski', value: 'hr_HR'), // 克罗地亚语 - LanguageModel(name: 'slovak', alias: 'Slovenský', value: 'sk_SK'), // 斯洛伐克语 - LanguageModel( - name: 'slovenian', alias: 'Slovenščina', value: 'sl_SI'), // 斯洛文尼亚语 - LanguageModel( - name: 'lithuanian', alias: 'Lietuvių', value: 'lt_LT'), // 立陶宛语 - LanguageModel(name: 'latvian', alias: 'Latviešu', value: 'lv_LV'), // 拉脱维亚语 - LanguageModel(name: 'estonian', alias: 'Eesti', value: 'et_EE'), // 爱沙尼亚语 - LanguageModel( - name: 'serbian', alias: 'Srpski', value: 'sr_RS'), // 塞尔维亚语(拉丁) - LanguageModel(name: 'icelandic', alias: 'Íslenska', value: 'is_IS'), // 冰岛语 - ]; + final List languageList = settingsLanguageList; Rx language = LanguageModel().obs; diff --git a/lib/modules/settings/models/settings_language_data.dart b/lib/modules/settings/models/settings_language_data.dart new file mode 100644 index 000000000..86afc5aa1 --- /dev/null +++ b/lib/modules/settings/models/settings_language_data.dart @@ -0,0 +1,65 @@ +import 'language_model.dart'; + +final List settingsLanguageList = List.unmodifiable([ + LanguageModel(name: 'followingSystem', alias: '', value: 'system'), // 跟随系统.tr + LanguageModel(name: 'english', alias: 'English', value: 'en_US'), // 英语.tr + LanguageModel(name: 'chinese', alias: '中文', value: 'zh_CN'), // 中文.tr + LanguageModel( + name: 'traditionalChinese', alias: '繁體中文', value: 'zh_TW'), // 添加繁体中文 + LanguageModel( + name: 'traditionalChineseHK', + alias: '繁體中文(HK)', + value: 'zh_HK'), // 添加香港繁体中文 + LanguageModel( + name: 'spanish', alias: 'Español', value: 'es_ES'), // 添加西班牙语选项 + LanguageModel( + name: 'portuguese', alias: 'Português', value: 'pt_PT'), // 添加葡萄牙语 + LanguageModel(name: 'japanese', alias: '日本語', value: 'ja_JP'), // 添加日语选项 + LanguageModel(name: 'korean', alias: '한국어', value: 'ko_KR'), // 添加韩语选项 + LanguageModel(name: 'french', alias: 'Français', value: 'fr_FR'), // 添加法语选项 + LanguageModel(name: 'german', alias: 'Deutsch', value: 'de_DE'), // 添加德语选项 + LanguageModel(name: 'russian', alias: 'Русский', value: 'ru_RU'), // 添加俄语选项 + LanguageModel(name: 'arabic', alias: 'العربية', value: 'ar_SA'), // 阿拉伯语 + LanguageModel(name: 'persian', alias: 'فارسی', value: 'fa_IR'), // 波斯语 + LanguageModel( + name: 'vietnamese', alias: 'Tiếng Việt', value: 'vi_VN'), // 添加越南语选项 + LanguageModel( + name: 'italian', alias: 'Italiano', value: 'it_IT'), // 添加意大利语选项 + LanguageModel( + name: 'hindi', alias: 'हिन्दी', value: 'hi_IN'), // 添加印度语(印地语)选项 + LanguageModel( + name: 'indonesian', + alias: 'Bahasa Indonesia', + value: 'id_ID'), // 添加印尼语选项 + LanguageModel(name: 'thai', alias: 'ไทย', value: 'th_TH'), // 添加泰语选项 + LanguageModel( + name: 'malay', alias: 'Bahasa Melayu', value: 'ms_MY'), // 添加马来语选项 + LanguageModel(name: 'turkish', alias: 'Türkçe', value: 'tr_TR'), // 添加土耳其语选项 + LanguageModel(name: 'polish', alias: 'Polski', value: 'pl_PL'), // 添加波兰语选项 + LanguageModel(name: 'filipino', alias: 'Filipino', value: 'tl_PH'), // 菲律宾语 + LanguageModel(name: 'dutch', alias: 'Nederlands', value: 'nl_NL'), // 荷兰语 + LanguageModel(name: 'swedish', alias: 'Svenska', value: 'sv_SE'), // 瑞典语 + LanguageModel(name: 'danish', alias: 'Dansk', value: 'da_DK'), // 丹麦语 + LanguageModel(name: 'finnish', alias: 'Suomi', value: 'fi_FI'), // 芬兰语 + LanguageModel(name: 'czech', alias: 'Čeština', value: 'cs_CZ'), // 捷克语 + LanguageModel(name: 'hungarian', alias: 'Magyar', value: 'hu_HU'), // 匈牙利语 + LanguageModel(name: 'norwegian', alias: 'Norsk', value: 'nb_NO'), // 挪威语 + LanguageModel(name: 'romanian', alias: 'Română', value: 'ro_RO'), // 罗马尼亚语 + LanguageModel( + name: 'ukrainian', alias: 'Українська', value: 'uk_UA'), // 乌克兰语 + LanguageModel(name: 'greek', alias: 'Ελληνικά', value: 'el_GR'), // 希腊语 + LanguageModel( + name: 'bulgarian', alias: 'Български', value: 'bg_BG'), // 保加利亚语 + LanguageModel(name: 'croatian', alias: 'Hrvatski', value: 'hr_HR'), // 克罗地亚语 + LanguageModel(name: 'slovak', alias: 'Slovenský', value: 'sk_SK'), // 斯洛伐克语 + LanguageModel( + name: 'slovenian', alias: 'Slovenščina', value: 'sl_SI'), // 斯洛文尼亚语 + LanguageModel( + name: 'lithuanian', alias: 'Lietuvių', value: 'lt_LT'), // 立陶宛语 + LanguageModel(name: 'latvian', alias: 'Latviešu', value: 'lv_LV'), // 拉脱维亚语 + LanguageModel(name: 'estonian', alias: 'Eesti', value: 'et_EE'), // 爱沙尼亚语 + LanguageModel( + name: 'serbian', alias: 'Srpski', value: 'sr_RS'), // 塞尔维亚语(拉丁) + LanguageModel(name: 'icelandic', alias: 'Íslenska', value: 'is_IS'), // 冰岛语 +]); + diff --git a/lib/modules/settings/views/settings_view.dart b/lib/modules/settings/views/settings_view.dart index 0ab7e9f79..5845336a0 100644 --- a/lib/modules/settings/views/settings_view.dart +++ b/lib/modules/settings/views/settings_view.dart @@ -39,8 +39,6 @@ class SettingsView extends GetView { _buildUserInfoCard(isDarkMode), SizedBox(height: 12.h), _buildVipPurchaseCard(isDarkMode), - // SizedBox(height: 20.h), - // _buildAISettingsSection(isDarkMode), SizedBox(height: 16.h), _buildSystemSettingsSection(isDarkMode), SizedBox(height: 20.h),