From 2d414e3b007f750cdad4f9e4a7c04db696bca5e4 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期四, 23 四月 2020 16:13:59 +0800
Subject: [PATCH] 2020-04-23 1.优化远程连接提示,改为Loading方案,防止连接过程用户点击重连图标。 2.点击网络检测图标会判断,是否正在远程连接,如果是,会弹窗提示用户”正在远程连接,是否仍要重新检测“。 3.Help 增加隐藏长按功能,长按后,可以开启远程过程异常弹窗提示。长按后关闭。

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserDeviceView.cs |   65 ++++++++++++++++++++++++++++++++
 1 files changed, 65 insertions(+), 0 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserDeviceView.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserDeviceView.cs
index 1a7835d..f9ece64 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserDeviceView.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/User/UserDeviceView.cs
@@ -216,6 +216,71 @@
             }
         }
 
+
+        public static void UpdataScenesCountNumber ()
+        {
+            try {
+                Application.RunOnMainThread (() => {
+                    for (int i = 0; i < UserMiddle.DeviceView.ChildrenCount; i++) {
+                        if (UserMiddle.DeviceView.GetChildren (i).GetType () == typeof (FrameLayout)) {
+                            FrameLayout rowView = (FrameLayout)UserMiddle.DeviceView.GetChildren (i);
+                            for (int j = 0; j < rowView.ChildrenCount; j++) {
+                                if (rowView.GetChildren (j).GetType () == typeof (FrameLayout)) {
+                                    FrameLayout frameView = (FrameLayout)rowView.GetChildren (j);
+                                    if (frameView.GetTagByKey ("DeviceType").ToString () == Shared.Language.StringByID (R.MyInternationalizationString.Scenes)) {
+                                        for (int k = 0; k < frameView.ChildrenCount; k++) {
+                                            if (frameView.GetChildren (k).GetType () == typeof (Button)) {
+                                                Button btn = (Button)frameView.GetChildren (k);
+                                                if (btn.GetTagByKey ("DeviceType") != null && btn.GetTagByKey ("DeviceType").ToString () == Shared.Language.StringByID (R.MyInternationalizationString.Scenes)) {
+
+                                                    //int eCount = 0;
+                                                    btn.IsSelected = false;
+                                                    CheckAndSetScenesCount (btn);
+
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                    }
+                });
+            } catch {
+            }
+        }
+
+        static void CheckAndSetScenesCount (Button mButton) {
+            int eCount = 0;
+            System.Threading.Tasks.Task.Run (() => {
+                foreach (var room in Room.Lists) {
+                    if (string.IsNullOrEmpty (room.Name)) {
+                        continue;
+                    }
+                    if (room != null) {
+                        foreach (var sceneFilePath in room.SceneFilePathList) {
+                            var scene = Scene.GetSceneByFilePath (sceneFilePath);
+                            if (scene != null)
+                                eCount += scene.LoopCount;
+                        }
+                    }
+                }
+                var globalSceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>> (CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile (Scene.GlobalSceneFilePath)));
+                if (globalSceneList != null) {
+                    foreach (var sceneFilePath in globalSceneList) {
+                        var scene = Scene.GetSceneByFilePath (sceneFilePath);
+                        if (scene == null)
+                            continue;
+                        eCount += scene.LoopCount;
+                    }
+                }
+
+              
+                Application.RunOnMainThread (() => {
+                    mButton.Text = eCount.ToString ();
+                });
+            });
+        }
         //static void DelUserEquipmentView (int deviceCount, int deviceType)
         //{
         //    if (deviceCount == 0) {

--
Gitblit v1.8.0