From a7a6907b3df65db9c4b2bb1237f709db5c985b52 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期二, 03 十二月 2019 10:25:20 +0800
Subject: [PATCH] 2019.12.3

---
 ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs |   71 ++++++++++++++++++++++-------------
 1 files changed, 45 insertions(+), 26 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs b/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs
index 9db4035..db2a05a 100644
--- a/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs
+++ b/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs
@@ -16,7 +16,7 @@
         /// <summary>
         /// SceneIcon
         /// </summary>
-        public Button SceneIcon;
+        public ImageView SceneIcon;
         /// <summary>
         /// statu
         /// </summary>
@@ -73,6 +73,16 @@
         {
             this.scene = sceneUI;
 
+            InitFrame();
+
+            InitStatu();
+        }
+
+        /// <summary>
+        /// InitFrame
+        /// </summary>
+        private void InitFrame()
+        {
             CardBG = new Button
             {
                 Width = Application.GetMinRealAverage(487),
@@ -82,23 +92,24 @@
             };
             AddChidren(CardBG);
 
-            SceneIcon = new Button
+            SceneIcon = new ImageView
             {
-                X = Application.GetMinRealAverage(14),
                 Width = Application.GetMinRealAverage(458),
-                Height = Application.GetRealHeight(305),
-                Gravity = Gravity.CenterHorizontal
+                Height = Application.GetMinRealAverage(305),
+                Gravity = Gravity.CenterHorizontal,
             };
             AddChidren(SceneIcon);
+            SceneIcon.SetViewShadow(true);
+            SceneIcon.SetCornerWithSameRadius(Application.GetRealHeight(100), HDLUtils.RectCornerBottomRight);
 
-            sceneBG = new Button
-            {
-                Width = Application.GetMinRealAverage(487),
-                Height = Application.GetMinRealAverage(348),
-                UnSelectedImagePath = "Item/SceneCard.png",
-                Gravity = Gravity.CenterHorizontal
-            };
-            AddChidren(sceneBG);
+            //sceneBG = new Button
+            //{
+            //    Width = Application.GetMinRealAverage(487),
+            //    Height = Application.GetMinRealAverage(348),
+            //    UnSelectedImagePath = "Item/SceneCard.png",
+            //    Gravity = Gravity.CenterHorizontal
+            //};
+            //AddChidren(sceneBG);
 
             TimeButton = new Button()
             {
@@ -128,18 +139,19 @@
                 Y = Application.GetMinRealAverage(239),
                 Width = Application.GetMinRealAverage(279),
                 Height = Application.GetMinRealAverage(60),
-                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
+                TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
                 SelectedTextColor = ZigbeeColor.Current.GXCTextSelectedColor,
                 TextAlignment = TextAlignment.CenterLeft,
             };
             AddChidren(SceneNameButton);
-
-            InitStatu();
         }
 
+        /// <summary>
+        /// InitStatu
+        /// </summary>
         private void InitStatu()
         {
-            SetIimeByDelayTime(scene.SceneDelayTime);
+            SetTimeByDelayTime(scene.SceneDelayTime);
             SetSceneNameText(scene.Name);
             SetIcon(scene.IconPath);
             SetCollect(Common.Room.CurrentRoom.GetLoveRoom().SceneUIFilePathList.Contains(scene.FileName));
@@ -147,7 +159,6 @@
             TimeButton.MouseUpEventHandler += SetTimeEvents;
             CollectButton.MouseUpEventHandler += CollectionEvent;
             SceneIcon.MouseUpEventHandler += SceneUpHandler;
-            sceneBG.MouseUpEventHandler += SceneUpHandler;
             SceneNameButton.MouseUpEventHandler += SceneUpHandler;
         }
 
@@ -178,7 +189,7 @@
         /// SetIimeByDelayTime
         /// </summary>
         /// <param name="time"></param>
-        public void SetIimeByDelayTime(int time)
+        public void SetTimeByDelayTime(int time)
         {
             if (time > 0)
             {
@@ -205,7 +216,14 @@
         /// <param name="iconPath"></param>
         public void SetIcon(string iconPath)
         {
-            SceneIcon.UnSelectedImagePath = iconPath;
+            if (scene.IconPathType == 0)
+            {
+                SceneIcon.ImagePath = iconPath;
+            }
+            else
+            {
+                SceneIcon.ImagePath = System.IO.Path.Combine(Config.Instance.FullPath, iconPath);
+            }
         }
 
         /// <summary>
@@ -226,6 +244,7 @@
         {
             if (scene.RemainTime > 0 && scene.SceneDelayTime == 0)
             {
+                CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneIsDelaying));
                 return;
             }
             //1鎴愬姛 0澶辫触
@@ -251,19 +270,18 @@
                 CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ControlSceneFail);
             }
 
-            var times = scene.SceneDelayTime;
-            scene.RemainTime = times;
+            scene.RemainTime = scene.SceneDelayTime;
             scene.SceneDelayTime = 0;
             new System.Threading.Thread(() =>
             {
-                while (times > 0)
+                while (scene.RemainTime > 0)
                 {
                     System.Threading.Thread.Sleep(1000);
                     Application.RunOnMainThread(() =>
                     {
-                        SetTimeText(CommonFormResouce.GetTimeString(times));
+                        SetTimeText(CommonFormResouce.GetTimeString(scene.RemainTime));
                     });
-                    times -= 1;
+                    scene.RemainTime -= 1;
                 }
                 Application.RunOnMainThread(() =>
                 {
@@ -301,6 +319,7 @@
         {
             if (scene.RemainTime > 0)
             {
+                CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneIsDelaying));
                 return;
             }
             var timeSelect = new SelectTime();
@@ -310,7 +329,7 @@
             timeSelect.TimeAction = (t) =>
             {
                 scene.SceneDelayTime = t;
-                SetIimeByDelayTime(t);
+                SetTimeByDelayTime(t);
             };
         }
 

--
Gitblit v1.8.0