更新样式

This commit is contained in:
wyf
2025-07-09 15:28:46 +08:00
parent c37ae7f293
commit ceb228b256
4 changed files with 98 additions and 41 deletions

View File

@@ -55,10 +55,11 @@ class _DeviceComponentWidgetState extends State<DeviceComponentWidget> {
backgroundColor: Colors.white, backgroundColor: Colors.white,
highlightColor: Colors.white, highlightColor: Colors.white,
borderRadius: 20.rpx, borderRadius: 20.rpx,
padding: EdgeInsetsDirectional.fromSTEB(30.rpx, 36.rpx, 55.rpx, 52.rpx), padding: EdgeInsetsDirectional.fromSTEB(30.rpx, 36.rpx, 55.rpx, 36.rpx),
onTap: () async {}, onTap: () async {},
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.max, mainAxisSize: MainAxisSize.max,
children: [ children: [
Row( Row(

View File

@@ -209,10 +209,10 @@ class DeviceInfoWidget extends GetView {
WebviewTestController webviewTestController = WebviewTestController webviewTestController =
Get.find(); Get.find();
await webviewTestController.web.jsbridge?.dart webviewTestController.web.jsbridge?.dart
.pageActive(false); .pageActive(false);
await Future.delayed(Duration(seconds: 1)); await Future.delayed(Duration(seconds: 1));
await webviewTestController.web.jsbridge?.dart webviewTestController.web.jsbridge?.dart
.appToHtmlDevice(device); .appToHtmlDevice(device);
MainPageBBottomChange.jumpTo(2); MainPageBBottomChange.jumpTo(2);
Get.until((route) => Get.until((route) =>

View File

@@ -79,11 +79,10 @@ class _HomeDeviceStausWidgetState extends State<HomeDeviceStausWidget> {
try { try {
var device = widget.deviceStatus; var device = widget.deviceStatus;
WebviewTestController webviewTestController = Get.find(); WebviewTestController webviewTestController = Get.find();
webviewTestController.web.jsbridge?.dart
await webviewTestController.web.jsbridge?.dart
.pageActive(false); .pageActive(false);
await Future.delayed(Duration(seconds: 1)); await Future.delayed(Duration(seconds: 1));
await webviewTestController.web.jsbridge?.dart webviewTestController.web.jsbridge?.dart
.appToHtmlDevice(device); .appToHtmlDevice(device);
MainPageBBottomChange.jumpTo(2); MainPageBBottomChange.jumpTo(2);
} catch (e) { } catch (e) {

View File

@@ -7,9 +7,11 @@ import 'package:easyweb/base/easyws.dart';
import 'package:easyweb/base/minisdk.dart'; import 'package:easyweb/base/minisdk.dart';
import 'package:easyweb/easyweb.dart'; import 'package:easyweb/easyweb.dart';
import 'package:ef/ef.dart'; import 'package:ef/ef.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:vbvs_app/common/color/ServiceConstant.dart'; import 'package:vbvs_app/common/color/ServiceConstant.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/controller/user_info_controller.dart'; import 'package:vbvs_app/controller/user_info_controller.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';
@@ -31,6 +33,7 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
WebviewTestController() : super(WebviewTestModel()) { WebviewTestController() : super(WebviewTestModel()) {
web = WebviewHelper( web = WebviewHelper(
isheadless: true,
jsbridge: buildsdk( jsbridge: buildsdk(
// father: this, // father: this,
// clientId: '494641114', // clientId: '494641114',
@@ -89,7 +92,7 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
}); });
//sdk定义接口 //sdk定义接口
bridge.sdk.querySelectDevice((args) async { bridge.sdk.querySelectDevice((args) async {
ef.log('updateBlueToothStatus: $args'); ef.log('querySelectDevice: $args');
// bluetooth = args[0]; // bluetooth = args[0];
MHTHomeController deviceController = Get.find(); MHTHomeController deviceController = Get.find();
await deviceController.getDeviceList(group: 'room'); await deviceController.getDeviceList(group: 'room');
@@ -134,10 +137,24 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
var data = await homeController.restoreTimer(args); var data = await homeController.restoreTimer(args);
return data; return data;
}); });
bridge.sdk.toBindDevice((args) async {
ef.log('queryInstantData: $args');
Get.toNamed("/mHTDeviceTypePage");
return true;
});
}); });
} catch (e, s) { } catch (e, s) {
ef.log('$e,$s'); ef.log('$e,$s');
} }
// try {
// web.runApp('mhtControl').then((x) {
// ready.value = true;
// web.build();
// });
// } catch (e, s) {
// ef.log('$e,$s');
// }
} }
late WebviewHelper web; late WebviewHelper web;
var ready = false.obs; var ready = false.obs;
@@ -288,6 +305,14 @@ class WebviewTestController extends GetControllerEx<WebviewTestModel> {
class WebviewTestView extends GetComponent<WebviewTestController> { class WebviewTestView extends GetComponent<WebviewTestController> {
WebviewTestView({super.key, super.oncreate}); WebviewTestView({super.key, super.oncreate});
@override
WebviewTestController newinstance() {
if (ef.kvRoot.WebviewTestController == null) {
ef.kvRoot.WebviewTestController = WebviewTestController();
}
return ef.kvRoot.WebviewTestController;
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
UserInfoController userInfoController = Get.find(); UserInfoController userInfoController = Get.find();
@@ -301,7 +326,7 @@ class WebviewTestView extends GetComponent<WebviewTestController> {
}); });
return Scaffold( return Scaffold(
backgroundColor: Colors.black12, backgroundColor: Colors.transparent,
body: Column( body: Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisSize: MainAxisSize.max, mainAxisSize: MainAxisSize.max,
@@ -311,33 +336,65 @@ class WebviewTestView extends GetComponent<WebviewTestController> {
: MainAxisAlignment.center, : MainAxisAlignment.center,
children: [ children: [
Obx(() { Obx(() {
if (userInfoController.model.login! == null || return Visibility(
userInfoController.model.login! == 0) { visible: userInfoController.model.login! == null ||
return Center( userInfoController.model.login! == 0,
// 包一层 Center强制水平和垂直都居中 child: Center(
child: Text( child: InkWell(
"登录进行设备控制".tr, onTap: () => Get.toNamed("/loginPage"),
style: TextStyle(color: Colors.white, fontSize: 30.rpx), child: RichText(
text: TextSpan(
children: [
WidgetSpan(
child: Stack(
children: [
Text(
"登录",
style: TextStyle(
color: stringToColor("#84F5FF"),
fontSize: 30.rpx,
),
),
Positioned(
bottom: 0, // 控制下划线与文字的间距
left: 0,
right: 0,
child: Container(
height: 1, // 下划线粗细
color: stringToColor("#84F5FF"),
),
),
],
),
),
TextSpan(
text: "进行设备控制",
style: TextStyle(
color: Colors.white,
fontSize: 30.rpx,
),
),
],
),
),
),
), ),
); );
} }),
Obx(() {
return Expanded( return Visibility(
visible: userInfoController.model.login! != null &&
userInfoController.model.login! == 1,
child: Expanded(
child: Align( child: Align(
alignment: Alignment.topLeft, alignment: Alignment.topLeft,
child: controller.ready.value child: Obx(
? ((controller.cnt.value % 2 == 0) () => controller.ready.value
? controller.web.build( ? controller.web.build()
key: ValueKey("A"),
headless: false,
)
: controller.web.build(
key: ValueKey("B"),
headless: false,
))
: Container(), : Container(),
), ),
); ),
));
}), }),
], ],
), ),