fix:调整WiFi配网时loading不连续的问题

This commit is contained in:
liyi 2025-02-10 13:40:02 +08:00
parent d867cf870e
commit bc48f573a1
4 changed files with 42 additions and 21 deletions

View File

@ -115,7 +115,7 @@ class CommandReciverManager {
break;
}
parseData(oriDataList).then((Reply? value) async {
EasyLoading.dismiss();
// EasyLoading.dismiss();
await EventBusManager().eventBusFir(value);
}).catchError((Object error) {
AppLog.log('APP解析数据时发生错误: ${error.toString()}');

View File

@ -88,11 +88,13 @@ class ConfiguringWifiLogic extends BaseGetXController {
Future<void> _replySenderConfiguringWifiResult(Reply reply) async {
final int status = reply.data[2];
state.sureBtnState.value = 0;
state.isLoading.value = false;
switch (status) {
case 0x00:
//
cancelBlueConnetctToastTimer();
dismissEasyLoading();
final int secretKeyJsonLength = (reply.data[4] << 8) + reply.data[3];
final List<int> secretKeyList =
@ -110,7 +112,8 @@ class ConfiguringWifiLogic extends BaseGetXController {
/// ,peerId
StartChartManage().lockPeerId = peerId ?? '';
dismissEasyLoading();
state.isLoading.value = false;
//
await Storage.saveLockNetWorkInfo(jsonMap);
//
@ -126,6 +129,7 @@ class ConfiguringWifiLogic extends BaseGetXController {
dismissEasyLoading();
cancelBlueConnetctToastTimer();
showToast('配网失败'.tr);
state.isLoading.value = false;
break;
}
}
@ -138,6 +142,10 @@ class ConfiguringWifiLogic extends BaseGetXController {
// wifi
Future<void> senderConfiguringWifiAction() async {
if (state.isLoading.isTrue) {
AppLog.log('正在配网中请勿重复点击');
return;
}
if (state.wifiNameController.text.isEmpty) {
showToast('请输入wifi名称'.tr);
return;
@ -197,11 +205,14 @@ class ConfiguringWifiLogic extends BaseGetXController {
password: state.wifiPWDController.text,
gatewayConfigurationStr: state.getGatewayConfigurationStr,
);
EasyLoading.show();
}
},
isAddEquipment: true,
);
//
showEasyLoading();
state.isLoading.value = true;
//
}
//

View File

@ -1,4 +1,3 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart';
@ -21,7 +20,8 @@ class ConfiguringWifiPage extends StatefulWidget {
State<ConfiguringWifiPage> createState() => _ConfiguringWifiPageState();
}
class _ConfiguringWifiPageState extends State<ConfiguringWifiPage> with RouteAware {
class _ConfiguringWifiPageState extends State<ConfiguringWifiPage>
with RouteAware {
final ConfiguringWifiLogic logic = Get.put(ConfiguringWifiLogic());
final ConfiguringWifiState state = Get.find<ConfiguringWifiLogic>().state;
@ -30,24 +30,32 @@ class _ConfiguringWifiPageState extends State<ConfiguringWifiPage> with RouteAwa
return Scaffold(
backgroundColor: Colors.white,
appBar: TitleAppBar(
barTitle: '配置WiFi'.tr,
haveBack: true,
backgroundColor: AppColors.mainColor),
barTitle: '配置WiFi'.tr,
haveBack: true,
backgroundColor: AppColors.mainColor),
body: Column(
children: <Widget>[
configuringWifiTFWidget('WiFi名称'.tr, '请输入WiFi名字'.tr, state.wifiNameController),
Container(width: 1.sw, height: 1.h,color: AppColors.mainBackgroundColor),
configuringWifiTFWidget('WiFi密码'.tr, '请输入WiFi密码'.tr, state.wifiPWDController),
SizedBox(height: 50.h,),
SubmitBtn(btnName: '确定'.tr, onClick: () {
logic.senderConfiguringWifiAction();
}),
configuringWifiTFWidget(
'WiFi名称'.tr, '请输入WiFi名字'.tr, state.wifiNameController),
Container(
width: 1.sw, height: 1.h, color: AppColors.mainBackgroundColor),
configuringWifiTFWidget(
'WiFi密码'.tr, '请输入WiFi密码'.tr, state.wifiPWDController),
SizedBox(
height: 50.h,
),
SubmitBtn(
btnName: '确定'.tr,
onClick: () {
logic.senderConfiguringWifiAction();
},
),
],
));
}
Widget configuringWifiTFWidget(
String titleStr, String rightTitle,TextEditingController controller) {
String titleStr, String rightTitle, TextEditingController controller) {
return Column(
children: <Widget>[
Container(height: 10.h),
@ -86,16 +94,16 @@ class _ConfiguringWifiPageState extends State<ConfiguringWifiPage> with RouteAwa
hintStyle: TextStyle(fontSize: 22.sp),
focusedBorder: const OutlineInputBorder(
borderSide:
BorderSide(width: 0, color: Colors.transparent)),
BorderSide(width: 0, color: Colors.transparent)),
disabledBorder: const OutlineInputBorder(
borderSide:
BorderSide(width: 0, color: Colors.transparent)),
BorderSide(width: 0, color: Colors.transparent)),
enabledBorder: const OutlineInputBorder(
borderSide:
BorderSide(width: 0, color: Colors.transparent)),
BorderSide(width: 0, color: Colors.transparent)),
border: const OutlineInputBorder(
borderSide:
BorderSide(width: 0, color: Colors.transparent)),
BorderSide(width: 0, color: Colors.transparent)),
contentPadding: const EdgeInsets.symmetric(vertical: 0),
),
style: TextStyle(

View File

@ -26,4 +26,6 @@ class ConfiguringWifiState{
TextEditingController wifiNameController = TextEditingController();
TextEditingController wifiPWDController = TextEditingController();
String getGatewayConfigurationStr = '';
RxBool isLoading=false.obs;
}