diff --git a/lib/mine/addLock/lock_voice_setting/lock_voice_setting_logic.dart b/lib/mine/addLock/lock_voice_setting/lock_voice_setting_logic.dart index 017f6dc9..fde8ba46 100644 --- a/lib/mine/addLock/lock_voice_setting/lock_voice_setting_logic.dart +++ b/lib/mine/addLock/lock_voice_setting/lock_voice_setting_logic.dart @@ -31,6 +31,7 @@ class LockVoiceSettingLogic extends BaseGetXController { LockVoiceSettingState state = LockVoiceSettingState(); StreamSubscription? _replySubscription; bool _isThrottled = false; + // 超时定时器(用于检测是否未收到回复) Timer? _sendTimeoutTimer; @@ -248,16 +249,29 @@ class LockVoiceSettingLogic extends BaseGetXController { data?.forEach((element) { final lang = element.lang; - List parts = lang.split('_'); - final indexOf = locales.indexOf(Locale(parts[0], parts[1])); - final passthroughItem = PassthroughItem( - lang: element.lang, - timbres: element.timbres, - langText: - ExtensionLanguageType.fromLocale(locales[indexOf]).lanTitle, - name: element.name, - ); - state.languages.add(passthroughItem); + if (lang == 'zh_TW') { + // 如果是台湾的话应该显示未简体中文 + List parts = lang.split('_'); + final indexOf = locales.indexOf(Locale(parts[0], parts[1])); + final passthroughItem = PassthroughItem( + lang: element.lang, + timbres: element.timbres, + langText: '简体中文'.tr + '(中国台湾)'.tr, + name: element.name, + ); + state.languages.add(passthroughItem); + } else { + List parts = lang.split('_'); + final indexOf = locales.indexOf(Locale(parts[0], parts[1])); + final passthroughItem = PassthroughItem( + lang: element.lang, + timbres: element.timbres, + langText: + ExtensionLanguageType.fromLocale(locales[indexOf]).lanTitle, + name: element.name, + ); + state.languages.add(passthroughItem); + } }); state.languages.refresh(); final lang = state @@ -314,6 +328,7 @@ class LockVoiceSettingLogic extends BaseGetXController { state.progress.value = 0.0; // 开始前重置进度 _sendNextPackage(); } + void _handleSendTimeout() { _isTimeout = true; // 标记超时状态 dismissEasyLoading(); @@ -347,7 +362,6 @@ class LockVoiceSettingLogic extends BaseGetXController { _handleSendTimeout(); // 触发超时处理 }); - int start = state.voiceSubcontractingIndex * state.voiceSubcontractingSize; int end = start + state.voiceSubcontractingSize; if (end > state.data!.length) end = state.data!.length;