fix: 修复UI更新集合修改异常与WiFi环境校验问题,调整登录页布局
1. 修复pendingUIUpdates遍历时的集合修改异常,通过快照方式处理 2. 增加WiFi环境校验,仅WiFi在线时拉取云端配置 3. 批量调整登录页预制体的UI布局参数
This commit is contained in:
parent
f7e7c9fcbd
commit
5791de31f1
@ -1213,10 +1213,10 @@ RectTransform:
|
||||
- {fileID: 684666579658391183}
|
||||
m_Father: {fileID: 1639875081832707489}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 1}
|
||||
m_AnchorMax: {x: 0.5, y: 1}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -666}
|
||||
m_SizeDelta: {x: 690, y: 90}
|
||||
m_SizeDelta: {x: -60, y: 90}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!222 &5465190201275647075
|
||||
CanvasRenderer:
|
||||
@ -2727,7 +2727,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -16.5}
|
||||
m_AnchoredPosition: {x: 0, y: -16.452919}
|
||||
m_SizeDelta: {x: 32, y: 32}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &2921788503276695093
|
||||
@ -5390,9 +5390,9 @@ RectTransform:
|
||||
m_Father: {fileID: 2422096111024029999}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 345, y: -45}
|
||||
m_SizeDelta: {x: 690, y: 90}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -45}
|
||||
m_SizeDelta: {x: 0, y: 90}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &3065496157279089340
|
||||
CanvasRenderer:
|
||||
@ -7986,8 +7986,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 345, y: -16.5}
|
||||
m_SizeDelta: {x: 690, y: 33}
|
||||
m_AnchoredPosition: {x: 425.84265, y: -16.452919}
|
||||
m_SizeDelta: {x: 851.6853, y: 32.905838}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &5884218254345197256
|
||||
CanvasRenderer:
|
||||
@ -8426,10 +8426,10 @@ RectTransform:
|
||||
- {fileID: 44562984798115352}
|
||||
m_Father: {fileID: 1639875081832707489}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 1}
|
||||
m_AnchorMax: {x: 0.5, y: 1}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -502}
|
||||
m_SizeDelta: {x: 702, y: 112}
|
||||
m_SizeDelta: {x: -60, y: 112}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!222 &6483314700030402381
|
||||
CanvasRenderer:
|
||||
@ -8571,9 +8571,9 @@ RectTransform:
|
||||
m_Father: {fileID: 2422096111024029999}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 345, y: -45}
|
||||
m_SizeDelta: {x: 690, y: 90}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -45}
|
||||
m_SizeDelta: {x: 0, y: 90}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &5996576350329013511
|
||||
CanvasRenderer:
|
||||
@ -8845,8 +8845,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 680, y: -41}
|
||||
m_SizeDelta: {x: 335, y: 62}
|
||||
m_AnchoredPosition: {x: 841.6853, y: -41}
|
||||
m_SizeDelta: {x: 415.84265, y: 62}
|
||||
m_Pivot: {x: 1, y: 0.5}
|
||||
--- !u!222 &8365369779441904015
|
||||
CanvasRenderer:
|
||||
@ -9575,7 +9575,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -16.5}
|
||||
m_AnchoredPosition: {x: 0, y: -16.452919}
|
||||
m_SizeDelta: {x: 32, y: 32}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &4576051275392203378
|
||||
@ -9858,8 +9858,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 229, y: -16.5}
|
||||
m_SizeDelta: {x: 374, y: 33}
|
||||
m_AnchoredPosition: {x: 222.98212, y: -16.452919}
|
||||
m_SizeDelta: {x: 361.96423, y: 32.905838}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &4796546782487776879
|
||||
CanvasRenderer:
|
||||
@ -10029,8 +10029,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 114, y: -16.5}
|
||||
m_SizeDelta: {x: 144, y: 33}
|
||||
m_AnchoredPosition: {x: 111.68295, y: -16.452919}
|
||||
m_SizeDelta: {x: 139.3659, y: 32.905838}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &8476361296566485515
|
||||
CanvasRenderer:
|
||||
@ -10123,7 +10123,7 @@ RectTransform:
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 10, y: -41}
|
||||
m_SizeDelta: {x: 335, y: 62}
|
||||
m_SizeDelta: {x: 415.84265, y: 62}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &3290300190119161819
|
||||
CanvasRenderer:
|
||||
@ -10197,7 +10197,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 237, y: 0}
|
||||
m_AnchoredPosition: {x: 236.14778, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 40}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!222 &5170872477376297604
|
||||
@ -10465,8 +10465,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 345, y: -74.5}
|
||||
m_SizeDelta: {x: 690, y: 33}
|
||||
m_AnchoredPosition: {x: 425.84265, y: -74.35876}
|
||||
m_SizeDelta: {x: 851.6853, y: 32.905838}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &5787027134745446057
|
||||
CanvasRenderer:
|
||||
@ -12777,8 +12777,8 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 118.5, y: 0}
|
||||
m_SizeDelta: {x: 237, y: 40}
|
||||
m_AnchoredPosition: {x: 118.07389, y: 0}
|
||||
m_SizeDelta: {x: 236.14778, y: 40}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!222 &737449055011416443
|
||||
CanvasRenderer:
|
||||
@ -14070,7 +14070,7 @@ PrefabInstance:
|
||||
- target: {fileID: 813754382663813515, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 180
|
||||
value: 220.42133
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 813754382663813515, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
@ -14200,7 +14200,7 @@ PrefabInstance:
|
||||
- target: {fileID: 3483140798420058103, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 660
|
||||
value: 808.21155
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3483140798420058103, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
@ -14240,7 +14240,7 @@ PrefabInstance:
|
||||
- target: {fileID: 4243489019740776461, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 420
|
||||
value: 514.3164
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4243489019740776461, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
@ -14270,7 +14270,7 @@ PrefabInstance:
|
||||
- target: {fileID: 5540398808809424609, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 60
|
||||
value: 73.47378
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5540398808809424609, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
@ -14300,7 +14300,7 @@ PrefabInstance:
|
||||
- target: {fileID: 7167160133371796444, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 540
|
||||
value: 661.264
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7167160133371796444, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
@ -14330,7 +14330,7 @@ PrefabInstance:
|
||||
- target: {fileID: 8961243184128173635, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 300
|
||||
value: 367.3689
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8961243184128173635, guid: 572e01c47cf5e0a4fb95a7ff1282e041,
|
||||
type: 3}
|
||||
|
||||
@ -1375,14 +1375,15 @@ namespace Kill.UI.Pages
|
||||
|
||||
void Update()
|
||||
{
|
||||
// 执行所有挂起的UI更新
|
||||
// 执行所有挂起的UI更新:先取出快照再遍历,避免回调中再次 Add/Remove 触发"集合在枚举中被修改"异常
|
||||
if (pendingUIUpdates.Count > 0)
|
||||
{
|
||||
foreach (var update in pendingUIUpdates)
|
||||
{
|
||||
update?.Invoke();
|
||||
}
|
||||
var snapshot = pendingUIUpdates.ToArray();
|
||||
pendingUIUpdates.Clear();
|
||||
for (int i = 0; i < snapshot.Length; i++)
|
||||
{
|
||||
snapshot[i]?.Invoke();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2189,6 +2190,9 @@ namespace Kill.UI.Pages
|
||||
});
|
||||
}
|
||||
|
||||
// 只有WiFi在线时才拉取云端配置和定时任务(云端接口仅WiFi设备可用,蓝牙设备不走云端)
|
||||
if (!hasWifi) continue;
|
||||
|
||||
// 在线状态处理后拉取一次设备配置,与云端快照比对,有变化则刷新主页UI
|
||||
// 快照用独立的 _lastCloudConfigSnapshot,不能用 DataManager.deviceConfig:
|
||||
// BLE 拉取结果会回写 deviceConfig(如工作模式/锁定状态),若快照被污染,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user