更新控制页多语言
This commit is contained in:
@@ -1,3 +1,3 @@
|
|||||||
[
|
[
|
||||||
"assets/miniapp/mhtControl_1.0.49.zip"
|
"assets/miniapp/mhtControl_1.0.54.zip"
|
||||||
]
|
]
|
||||||
@@ -546,8 +546,8 @@
|
|||||||
"正在打开微信客服...": "Opening WeChat Support...",
|
"正在打开微信客服...": "Opening WeChat Support...",
|
||||||
"起床时间:": "Wake Up:",
|
"起床时间:": "Wake Up:",
|
||||||
"入睡时间:": "Sleep Time",
|
"入睡时间:": "Sleep Time",
|
||||||
"入睡时间": "Sleep Onset Time",
|
"入睡时间": "Sleep Time",
|
||||||
"起床时间": "起床时间",
|
"起床时间": "Wake Time",
|
||||||
"次": "Times",
|
"次": "Times",
|
||||||
"次/分": "times/min",
|
"次/分": "times/min",
|
||||||
"毫秒": "ms",
|
"毫秒": "ms",
|
||||||
@@ -597,5 +597,6 @@
|
|||||||
"去查看": "View now",
|
"去查看": "View now",
|
||||||
"正常值": "range:",
|
"正常值": "range:",
|
||||||
"绑定设备": "Bind Device",
|
"绑定设备": "Bind Device",
|
||||||
"设备分享提醒": "Device Sharing Alert","生命体征":"Vital signs"
|
"设备分享提醒": "Device Sharing Alert","生命体征":"Vital signs",
|
||||||
|
"无报告":"none"
|
||||||
}
|
}
|
||||||
@@ -593,5 +593,6 @@
|
|||||||
"该设备的历史数据将被清除": "该设备的历史数据将被清除","有一条新的设备分享消息":"有一条新的设备分享消息","去查看":"去查看",
|
"该设备的历史数据将被清除": "该设备的历史数据将被清除","有一条新的设备分享消息":"有一条新的设备分享消息","去查看":"去查看",
|
||||||
"正常值":"正常值:",
|
"正常值":"正常值:",
|
||||||
"绑定设备":"绑定设备",
|
"绑定设备":"绑定设备",
|
||||||
"设备分享提醒":"设备分享提醒","生命体征":"生命体征"
|
"设备分享提醒":"设备分享提醒","生命体征":"生命体征",
|
||||||
|
"无报告":"无报告"
|
||||||
}
|
}
|
||||||
@@ -596,5 +596,6 @@
|
|||||||
"正常值": "正常值:",
|
"正常值": "正常值:",
|
||||||
"绑定设备": "绑定设备",
|
"绑定设备": "绑定设备",
|
||||||
"设备分享提醒": "設備分享提醒",
|
"设备分享提醒": "設備分享提醒",
|
||||||
"生命体征": "生命體徵"
|
"生命体征": "生命體徵",
|
||||||
|
"无报告":"无报告"
|
||||||
}
|
}
|
||||||
Binary file not shown.
@@ -34,7 +34,7 @@ class _SleepCalendarWidgetState extends State<SleepCalendarWidget> {
|
|||||||
CalendarController calendarController = Get.find();
|
CalendarController calendarController = Get.find();
|
||||||
RxMap sleepDate = <dynamic, dynamic>{}.obs;
|
RxMap sleepDate = <dynamic, dynamic>{}.obs;
|
||||||
RxList showLabel = <dynamic>[
|
RxList showLabel = <dynamic>[
|
||||||
{"level": 5, "name": "无报告", "color": "#9E9E9E"}
|
{"level": 5, "name": "无报告".tr, "color": "#9E9E9E"}
|
||||||
].obs;
|
].obs;
|
||||||
// @override
|
// @override
|
||||||
// void initState() {
|
// void initState() {
|
||||||
@@ -149,7 +149,7 @@ class _SleepCalendarWidgetState extends State<SleepCalendarWidget> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Obx(() => Text(
|
Obx(() => Text(
|
||||||
'${calendarController.displayedMonth.value.year}年${calendarController.displayedMonth.value.month}月',
|
'${calendarController.displayedMonth.value.year}/${calendarController.displayedMonth.value.month}',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
|
|||||||
@@ -19,9 +19,7 @@ import 'package:vbvs_app/common/util/CheckNetwork.dart';
|
|||||||
import 'package:vbvs_app/common/util/CommonVariables.dart';
|
import 'package:vbvs_app/common/util/CommonVariables.dart';
|
||||||
import 'package:vbvs_app/common/util/Dio.dart';
|
import 'package:vbvs_app/common/util/Dio.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
|
||||||
import 'package:vbvs_app/common/util/requestWithLog.dart';
|
import 'package:vbvs_app/common/util/requestWithLog.dart';
|
||||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
|
||||||
import 'package:vbvs_app/controller/date/CalendarController.dart';
|
import 'package:vbvs_app/controller/date/CalendarController.dart';
|
||||||
import 'package:vbvs_app/controller/device/blueteeth_bind_controller.dart';
|
import 'package:vbvs_app/controller/device/blueteeth_bind_controller.dart';
|
||||||
import 'package:vbvs_app/controller/device/body_device_controller.dart';
|
import 'package:vbvs_app/controller/device/body_device_controller.dart';
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import 'package:ef/ef.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:vbvs_app/common/util/CommonVariables.dart';
|
import 'package:vbvs_app/common/util/CommonVariables.dart';
|
||||||
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/NullDataComponentWidget.dart';
|
import 'package:vbvs_app/component/NullDataComponentWidget.dart';
|
||||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||||
import 'package:vbvs_app/controller/mh_controller/mh_language_controller.dart';
|
import 'package:vbvs_app/controller/mh_controller/mh_language_controller.dart';
|
||||||
@@ -195,6 +196,9 @@ class _HomePageState extends State<MainPageBBottomChange>
|
|||||||
UserInfoController userInfoController = Get.find();
|
UserInfoController userInfoController = Get.find();
|
||||||
WebviewTestController webviewTestController = Get.find();
|
WebviewTestController webviewTestController = Get.find();
|
||||||
if (index == 2) {
|
if (index == 2) {
|
||||||
|
WebviewTestController webviewTestController = Get.find();
|
||||||
|
webviewTestController.web.jsbridge?.dart
|
||||||
|
.switchLanguage(mhLanguageController.selectLanguage.value!.language_code);
|
||||||
await webviewTestController.web.jsbridge?.dart.pageActive(true);
|
await webviewTestController.web.jsbridge?.dart.pageActive(true);
|
||||||
//激活websocket
|
//激活websocket
|
||||||
edm.EasyDartModule.websocket.sendData(jsonEncode(WebSocketMessage(
|
edm.EasyDartModule.websocket.sendData(jsonEncode(WebSocketMessage(
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import 'package:vbvs_app/enum/APPPackageType.dart';
|
|||||||
import 'package:vbvs_app/language/AppLanguage.dart';
|
import 'package:vbvs_app/language/AppLanguage.dart';
|
||||||
import 'package:vbvs_app/pages/device_bind/componnet/FancyCircleCheckbox.dart';
|
import 'package:vbvs_app/pages/device_bind/componnet/FancyCircleCheckbox.dart';
|
||||||
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
||||||
|
import 'package:vbvs_app/pages/mh_page/test/WebviewTestModel.dart';
|
||||||
|
|
||||||
class LanguagePage extends StatefulWidget {
|
class LanguagePage extends StatefulWidget {
|
||||||
const LanguagePage({super.key});
|
const LanguagePage({super.key});
|
||||||
@@ -33,7 +34,6 @@ class _LanguagePageState extends State<LanguagePage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
// onTap: () => FocusScope.of(context).unfocus(),,
|
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -147,8 +147,17 @@ class _LanguagePageState extends State<LanguagePage> {
|
|||||||
try {
|
try {
|
||||||
// ef.kv.set("language",
|
// ef.kv.set("language",
|
||||||
// language.language_code);
|
// language.language_code);
|
||||||
ef.kvdb.write("mht/language",
|
await ef.kvdb.write(
|
||||||
|
"mht/language",
|
||||||
language.language_code);
|
language.language_code);
|
||||||
|
//todo 通知语言
|
||||||
|
WebviewTestController
|
||||||
|
webviewTestController =
|
||||||
|
Get.find();
|
||||||
|
webviewTestController
|
||||||
|
.web.jsbridge?.dart
|
||||||
|
.switchLanguage(language
|
||||||
|
.language_code);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
print(e);
|
print(e);
|
||||||
}
|
}
|
||||||
@@ -192,7 +201,6 @@ class _LanguagePageState extends State<LanguagePage> {
|
|||||||
lang.selected = (lang ==
|
lang.selected = (lang ==
|
||||||
language); // 根据选择更新状态
|
language); // 根据选择更新状态
|
||||||
}
|
}
|
||||||
|
|
||||||
await AppLanguage().loadLanguage(
|
await AppLanguage().loadLanguage(
|
||||||
language
|
language
|
||||||
.language_code,
|
.language_code,
|
||||||
@@ -222,6 +230,15 @@ class _LanguagePageState extends State<LanguagePage> {
|
|||||||
"mht/language",
|
"mht/language",
|
||||||
language
|
language
|
||||||
.language_code);
|
.language_code);
|
||||||
|
|
||||||
|
//todo 通知语言
|
||||||
|
WebviewTestController
|
||||||
|
webviewTestController =
|
||||||
|
Get.find();
|
||||||
|
webviewTestController
|
||||||
|
.web.jsbridge?.dart
|
||||||
|
.switchLanguage(language
|
||||||
|
.language_code);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
print(e);
|
print(e);
|
||||||
}
|
}
|
||||||
@@ -239,15 +256,6 @@ class _LanguagePageState extends State<LanguagePage> {
|
|||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
// ClickableContainer(
|
|
||||||
// backgroundColor: Colors.transparent, // 容器背景色
|
|
||||||
// highlightColor: themeController
|
|
||||||
// .currentColor.sc21, // 点击时的背景色
|
|
||||||
// padding: EdgeInsetsDirectional.fromSTEB(
|
|
||||||
// 40.rpx, 0.rpx, 40.rpx, 0.rpx),
|
|
||||||
// onTap: () {},
|
|
||||||
// child: Container(),
|
|
||||||
// ),
|
|
||||||
]
|
]
|
||||||
.divide(SizedBox(height: 0.rpx))
|
.divide(SizedBox(height: 0.rpx))
|
||||||
.addToStart(SizedBox(height: 30.rpx))
|
.addToStart(SizedBox(height: 30.rpx))
|
||||||
|
|||||||
@@ -278,8 +278,8 @@ class _BluetoothPageState extends State<BluetoothPage> {
|
|||||||
"/mhtWifiAfterPage",
|
"/mhtWifiAfterPage",
|
||||||
arguments: obsData,
|
arguments: obsData,
|
||||||
),
|
),
|
||||||
// _buildMenuButton(
|
_buildMenuButton(
|
||||||
// context, '睡眠习惯', "/sleepHabitPage"),
|
context, '睡眠习惯', "/sleepHabitPage"),
|
||||||
_buildMenuButton(
|
_buildMenuButton(
|
||||||
context, '分享设备'.tr, "/deviceSharePage",
|
context, '分享设备'.tr, "/deviceSharePage",
|
||||||
arguments: obsData),
|
arguments: obsData),
|
||||||
@@ -447,10 +447,11 @@ class _BluetoothPageState extends State<BluetoothPage> {
|
|||||||
onTap(); // 自定义点击逻辑优先执行
|
onTap(); // 自定义点击逻辑优先执行
|
||||||
} else if (path?.isNotEmpty == true) {
|
} else if (path?.isNotEmpty == true) {
|
||||||
if (path == "/sleepHabitPage") {
|
if (path == "/sleepHabitPage") {
|
||||||
|
Get.back();
|
||||||
WebviewTestController webviewTestController = Get.find();
|
WebviewTestController webviewTestController = Get.find();
|
||||||
webviewTestController.web.jsbridge?.dart.toSleepHabit();
|
webviewTestController.web.jsbridge?.dart.toSleepHabit();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final result = await Get.toNamed(path!, arguments: arguments);
|
final result = await Get.toNamed(path!, arguments: arguments);
|
||||||
if (result != null && onResult != null) {
|
if (result != null && onResult != null) {
|
||||||
onResult(result); // ✅ 有回调就处理返回值
|
onResult(result); // ✅ 有回调就处理返回值
|
||||||
|
|||||||
@@ -151,7 +151,8 @@ class DeviceInfoWidget extends GetView {
|
|||||||
try {
|
try {
|
||||||
WebviewTestController webviewTestController =
|
WebviewTestController webviewTestController =
|
||||||
Get.find();
|
Get.find();
|
||||||
|
webviewTestController.web.jsbridge?.dart
|
||||||
|
.switchLanguage(mhLanguageController.selectLanguage.value!.language_code);
|
||||||
webviewTestController.web.jsbridge?.dart
|
webviewTestController.web.jsbridge?.dart
|
||||||
.pageActive(false);
|
.pageActive(false);
|
||||||
// await Future.delayed(Duration(seconds: 1));
|
// await Future.delayed(Duration(seconds: 1));
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import 'package:flutterflow_ui/flutterflow_ui.dart';
|
|||||||
import 'package:vbvs_app/common/color/appConstants.dart';
|
import 'package:vbvs_app/common/color/appConstants.dart';
|
||||||
import 'package:vbvs_app/common/util/DailyLogUtils.dart';
|
import 'package:vbvs_app/common/util/DailyLogUtils.dart';
|
||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||||
import 'package:vbvs_app/pages/main_bottom/component/main_page_b_bottom_change.dart';
|
import 'package:vbvs_app/pages/main_bottom/component/main_page_b_bottom_change.dart';
|
||||||
@@ -85,7 +86,11 @@ class _HomeDeviceStausWidgetState extends State<HomeDeviceStausWidget> {
|
|||||||
onTap: () async {
|
onTap: () async {
|
||||||
try {
|
try {
|
||||||
var device = widget.deviceStatus;
|
var device = widget.deviceStatus;
|
||||||
|
|
||||||
WebviewTestController webviewTestController = Get.find();
|
WebviewTestController webviewTestController = Get.find();
|
||||||
|
webviewTestController.web.jsbridge?.dart.switchLanguage(
|
||||||
|
mhLanguageController
|
||||||
|
.selectLanguage.value!.language_code);
|
||||||
webviewTestController.web.jsbridge?.dart
|
webviewTestController.web.jsbridge?.dart
|
||||||
.pageActive(false);
|
.pageActive(false);
|
||||||
await Future.delayed(Duration(seconds: 1));
|
await Future.delayed(Duration(seconds: 1));
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ class _SnoreViewWidgetWidgetState extends State<BreathePauseNewWidget> {
|
|||||||
Container(
|
Container(
|
||||||
child: Text(
|
child: Text(
|
||||||
// "呼吸暂停监测介绍。",
|
// "呼吸暂停监测介绍。",
|
||||||
"呼吸暂停监测是指用户在睡眠过程中产生的呼吸暂停的图表说明。",
|
"呼吸暂停监测是指用户在睡眠过程中产生的呼吸暂停的图表说明。".tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ class _SnoreViewWidgetWidgetState extends State<SnoreViewWidgetWidget> {
|
|||||||
Container(
|
Container(
|
||||||
child: Text(
|
child: Text(
|
||||||
// "打鼾监测介绍。",
|
// "打鼾监测介绍。",
|
||||||
"打鼾监测是指用户在睡眠过程中打鼾频次的图表说明。",
|
"打鼾监测是指用户在睡眠过程中打鼾频次的图表说明。".tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: Colors.black,
|
color: Colors.black,
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ dev_dependencies:
|
|||||||
flutter_lints: ^4.0.0
|
flutter_lints: ^4.0.0
|
||||||
build_runner: ^2.4.6
|
build_runner: ^2.4.6
|
||||||
json_serializable: ^6.8.0
|
json_serializable: ^6.8.0
|
||||||
|
|
||||||
|
|
||||||
dependency_overrides:
|
dependency_overrides:
|
||||||
http_parser: ^4.1.0
|
http_parser: ^4.1.0
|
||||||
@@ -98,6 +99,7 @@ dependency_overrides:
|
|||||||
geolocator_android: 4.4.1
|
geolocator_android: 4.4.1
|
||||||
geocoding: 4.0.0
|
geocoding: 4.0.0
|
||||||
fluwx: 5.5.2
|
fluwx: 5.5.2
|
||||||
|
font_awesome_flutter: 10.5.0
|
||||||
|
|
||||||
flutter:
|
flutter:
|
||||||
uses-material-design: true
|
uses-material-design: true
|
||||||
|
|||||||
Reference in New Issue
Block a user