更新控制页多语言
This commit is contained in:
@@ -12,6 +12,7 @@ import 'package:vbvs_app/enum/APPPackageType.dart';
|
||||
import 'package:vbvs_app/language/AppLanguage.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/test/WebviewTestModel.dart';
|
||||
|
||||
class LanguagePage extends StatefulWidget {
|
||||
const LanguagePage({super.key});
|
||||
@@ -33,7 +34,6 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
Widget build(BuildContext context) {
|
||||
return LayoutBuilder(
|
||||
builder: (context, bodySize) => GestureDetector(
|
||||
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||
child: Container(
|
||||
decoration: BoxDecoration(
|
||||
image: DecorationImage(
|
||||
@@ -147,8 +147,17 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
try {
|
||||
// ef.kv.set("language",
|
||||
// language.language_code);
|
||||
ef.kvdb.write("mht/language",
|
||||
await ef.kvdb.write(
|
||||
"mht/language",
|
||||
language.language_code);
|
||||
//todo 通知语言
|
||||
WebviewTestController
|
||||
webviewTestController =
|
||||
Get.find();
|
||||
webviewTestController
|
||||
.web.jsbridge?.dart
|
||||
.switchLanguage(language
|
||||
.language_code);
|
||||
} catch (e) {
|
||||
print(e);
|
||||
}
|
||||
@@ -192,7 +201,6 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
lang.selected = (lang ==
|
||||
language); // 根据选择更新状态
|
||||
}
|
||||
|
||||
await AppLanguage().loadLanguage(
|
||||
language
|
||||
.language_code,
|
||||
@@ -222,6 +230,15 @@ class _LanguagePageState extends State<LanguagePage> {
|
||||
"mht/language",
|
||||
language
|
||||
.language_code);
|
||||
|
||||
//todo 通知语言
|
||||
WebviewTestController
|
||||
webviewTestController =
|
||||
Get.find();
|
||||
webviewTestController
|
||||
.web.jsbridge?.dart
|
||||
.switchLanguage(language
|
||||
.language_code);
|
||||
} catch (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))
|
||||
.addToStart(SizedBox(height: 30.rpx))
|
||||
|
||||
@@ -278,8 +278,8 @@ class _BluetoothPageState extends State<BluetoothPage> {
|
||||
"/mhtWifiAfterPage",
|
||||
arguments: obsData,
|
||||
),
|
||||
// _buildMenuButton(
|
||||
// context, '睡眠习惯', "/sleepHabitPage"),
|
||||
_buildMenuButton(
|
||||
context, '睡眠习惯', "/sleepHabitPage"),
|
||||
_buildMenuButton(
|
||||
context, '分享设备'.tr, "/deviceSharePage",
|
||||
arguments: obsData),
|
||||
@@ -447,10 +447,11 @@ class _BluetoothPageState extends State<BluetoothPage> {
|
||||
onTap(); // 自定义点击逻辑优先执行
|
||||
} else if (path?.isNotEmpty == true) {
|
||||
if (path == "/sleepHabitPage") {
|
||||
Get.back();
|
||||
WebviewTestController webviewTestController = Get.find();
|
||||
webviewTestController.web.jsbridge?.dart.toSleepHabit();
|
||||
webviewTestController.web.jsbridge?.dart.toSleepHabit();
|
||||
return;
|
||||
}
|
||||
}
|
||||
final result = await Get.toNamed(path!, arguments: arguments);
|
||||
if (result != null && onResult != null) {
|
||||
onResult(result); // ✅ 有回调就处理返回值
|
||||
|
||||
@@ -151,7 +151,8 @@ class DeviceInfoWidget extends GetView {
|
||||
try {
|
||||
WebviewTestController webviewTestController =
|
||||
Get.find();
|
||||
|
||||
webviewTestController.web.jsbridge?.dart
|
||||
.switchLanguage(mhLanguageController.selectLanguage.value!.language_code);
|
||||
webviewTestController.web.jsbridge?.dart
|
||||
.pageActive(false);
|
||||
// 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/util/DailyLogUtils.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/TopSlideNotification.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 {
|
||||
try {
|
||||
var device = widget.deviceStatus;
|
||||
|
||||
WebviewTestController webviewTestController = Get.find();
|
||||
webviewTestController.web.jsbridge?.dart.switchLanguage(
|
||||
mhLanguageController
|
||||
.selectLanguage.value!.language_code);
|
||||
webviewTestController.web.jsbridge?.dart
|
||||
.pageActive(false);
|
||||
await Future.delayed(Duration(seconds: 1));
|
||||
|
||||
Reference in New Issue
Block a user