diff --git a/lib/modules/settings/controllers/settings_controller.dart b/lib/modules/settings/controllers/settings_controller.dart index 54b40fb96..4d6bb0ddc 100644 --- a/lib/modules/settings/controllers/settings_controller.dart +++ b/lib/modules/settings/controllers/settings_controller.dart @@ -12,14 +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 '../models/app_supported_languages.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 = settingsLanguageList; + final List languageList = appSupportedLanguages; // 应用支持的语言列表 Rx currentLanguage = LanguageModel().obs; // 当前选择的语言 @@ -375,8 +375,8 @@ class SettingsController extends GetxController { } } - /// 获取当前应用数据 - String getSomeAppData() { + /// 获取当前应用信息 + String getSomeAppInfo() { try { final versionService = Get.find(); return ''' diff --git a/lib/modules/settings/models/settings_language_data.dart b/lib/modules/settings/models/app_supported_languages.dart similarity index 97% rename from lib/modules/settings/models/settings_language_data.dart rename to lib/modules/settings/models/app_supported_languages.dart index 91e16250e..efc466615 100644 --- a/lib/modules/settings/models/settings_language_data.dart +++ b/lib/modules/settings/models/app_supported_languages.dart @@ -2,9 +2,11 @@ import 'language_model.dart'; /// App界面支持的语言列表 /// 包含跟随系统、英语、中文、繁体中文、香港繁体中文、西班牙语、葡萄牙语、日语、韩语、法语、德语、俄语、阿拉伯语、波斯语、越南语、意大利语、印地语、印尼语、泰语、马来语等语言选项 -final List settingsLanguageList = List.unmodifiable([ +final List appSupportedLanguages = 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'), // 添加繁体中文 @@ -12,6 +14,7 @@ final List settingsLanguageList = List.unmodifiable([ 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'), // 添加葡萄牙语 diff --git a/lib/modules/settings/models/language_model.dart b/lib/modules/settings/models/language_model.dart index 40e3bfae6..d47a58816 100644 --- a/lib/modules/settings/models/language_model.dart +++ b/lib/modules/settings/models/language_model.dart @@ -2,9 +2,9 @@ /// 包含语言的名称、别名和值 /// 用于表示应用支持的不同语言 class LanguageModel { - final String name; //语言名称 - final String alias; //语言别名 - final String value; //语言代码 + final String name; //翻译键,用于显示用户友好的语言名称 + final String alias; //语言的本地名称,用于在界面上展示 + final String value; //语言代码,用于系统识别和国际化 LanguageModel({ this.name = '', diff --git a/lib/modules/settings/views/settings_view.dart b/lib/modules/settings/views/settings_view.dart index b06d3c7b9..a07f10888 100644 --- a/lib/modules/settings/views/settings_view.dart +++ b/lib/modules/settings/views/settings_view.dart @@ -1,11 +1,11 @@ +import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'dart:ui'; + import '../controllers/settings_controller.dart'; import '../../../core/widgets/common_bottom_nav.dart'; import '../../../routes/app_routes.dart'; -//import '../../../data/models/user_Info.dart'; import '../../common/webview_page.dart'; import '../../../modules/profile/controllers/profile_controller.dart'; import '../../profile/views/unified_avatar.dart'; @@ -431,7 +431,7 @@ class SettingsView extends GetView { iconColor: isDarkMode ? Colors.indigo[300]! : Colors.amber[600]!, value: isDarkMode, - onChanged: (value) { + onChanged: (isThemeChanged) { controller.toggleTheme(); }, isDarkMode: isDarkMode, @@ -900,7 +900,7 @@ class SettingsView extends GetView { ), SizedBox(height: 8.h), Text( - controller.getSomeAppData(), + controller.getSomeAppInfo(), style: TextStyle( fontSize: 10.sp, fontFamily: 'monospace', @@ -1113,14 +1113,14 @@ class SettingsView extends GetView { child: SingleChildScrollView( child: Column( mainAxisSize: MainAxisSize.min, - children: controller.languageList.map((language) { + children: controller.languageList.map((languageOption) { return Obx(() { final isSelected = controller.currentLanguage.value.value == - language.value; + languageOption.value; return GestureDetector( onTap: () { - controller.setLanguage(language); + controller.setLanguage(languageOption); Get.back(); }, child: Container( @@ -1148,7 +1148,7 @@ class SettingsView extends GetView { children: [ Expanded( child: Text( - language.name.tr, // 语言名称 + languageOption.name.tr, // 语言名称 style: TextStyle( fontSize: 16.sp, fontWeight: FontWeight.w500, @@ -1160,7 +1160,7 @@ class SettingsView extends GetView { ), ), Text( - language.alias, // 语言别名(原始名称,不加.tr) + languageOption.alias, // 语言别名(原始名称,不加.tr) style: TextStyle( fontSize: 14.sp, color: isDarkMode