From 66a9965c44ecc32a6696abca876ab9d1cd091584 Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期五, 28 二月 2020 15:25:13 +0800 Subject: [PATCH] 2020.2.28 --- ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs | 129 +++++++++++++++++++++++++++++-------------- 1 files changed, 87 insertions(+), 42 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs b/ZigbeeApp/Shared/Phone/Device/CommonForm/SceneMainView.cs index 9db4035..0defd1b 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> @@ -37,6 +37,10 @@ /// scene /// </summary> public SceneUI scene; + /// <summary> + /// CollectionAction + /// </summary> + public Action CollectionAction; /// <summary> /// IsSelected @@ -58,12 +62,17 @@ } } + /// <summary> + /// SceneMainView + /// </summary> + /// <param name="x"></param> + /// <param name="y"></param> public SceneMainView(int x, int y) { X = Application.GetRealWidth(x); Y = Application.GetRealHeight(y); - Width = Application.GetMinRealAverage(487); - Height = Application.GetMinRealAverage(348); + Width = Application.GetRealWidth(487); + Height = Application.GetRealHeight(358); } /// <summary> @@ -73,38 +82,51 @@ { this.scene = sceneUI; - CardBG = new Button - { - Width = Application.GetMinRealAverage(487), - Height = Application.GetMinRealAverage(348), - UnSelectedImagePath = "Item/FunctionCardView.png", - Gravity = Gravity.CenterHorizontal - }; - AddChidren(CardBG); + InitFrame(); - SceneIcon = new Button + InitStatu(); + } + + /// <summary> + /// InitFrame + /// </summary> + private void InitFrame() + { + //CardBG = new Button + //{ + // Width = Application.GetMinRealAverage(487), + // Height = Application.GetMinRealAverage(348), + // UnSelectedImagePath = "Item/FunctionCardView.png", + // Gravity = Gravity.CenterHorizontal + //}; + //AddChidren(CardBG); + + SceneIcon = new ImageView { - X = Application.GetMinRealAverage(14), + X=Application.GetRealWidth(14), Width = Application.GetMinRealAverage(458), - Height = Application.GetRealHeight(305), - Gravity = Gravity.CenterHorizontal + Height = Application.GetMinRealAverage(305), + Gravity = Gravity.CenterHorizontal, + Radius= (uint)Application.GetRealHeight(17) }; 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", + UnSelectedImagePath = "Scene/Background.png", Gravity = Gravity.CenterHorizontal }; AddChidren(sceneBG); TimeButton = new Button() { - X = Application.GetMinRealAverage(40), - Y = Application.GetMinRealAverage(17), - Width = Application.GetMinRealAverage(320), + X = Application.GetMinRealAverage(30), + Y = Application.GetMinRealAverage(20), + Width = Application.GetMinRealAverage(63), Height = Application.GetMinRealAverage(63), TextColor = ZigbeeColor.Current.GXCTextSelectedColor3, TextAlignment = TextAlignment.CenterLeft, @@ -113,8 +135,8 @@ CollectButton = new Button { - X = Application.GetMinRealAverage(366), - Y = Application.GetMinRealAverage(14), + X = Application.GetMinRealAverage(350), + Y = Application.GetMinRealAverage(1), Width = Application.GetMinRealAverage(107), Height = Application.GetMinRealAverage(107), UnSelectedImagePath = "Item/Collection1.png", @@ -128,18 +150,21 @@ 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, + TextSize = 14, + IsBold = true }; 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,8 +172,8 @@ TimeButton.MouseUpEventHandler += SetTimeEvents; CollectButton.MouseUpEventHandler += CollectionEvent; SceneIcon.MouseUpEventHandler += SceneUpHandler; - sceneBG.MouseUpEventHandler += SceneUpHandler; SceneNameButton.MouseUpEventHandler += SceneUpHandler; + sceneBG.MouseUpEventHandler += SceneUpHandler; } /// <summary> @@ -157,10 +182,12 @@ /// <param name="name"></param> public void SetTimeText(string name) { - TimeButton.Width = Application.GetMinRealAverage(320); + TimeButton.Width = Application.GetMinRealAverage(280); TimeButton.Height = Application.GetMinRealAverage(63); TimeButton.UnSelectedImagePath = string.Empty; TimeButton.Text = name; + TimeButton.TextSize = 14; + TimeButton.IsBold = true; } /// <summary> @@ -178,7 +205,7 @@ /// SetIimeByDelayTime /// </summary> /// <param name="time"></param> - public void SetIimeByDelayTime(int time) + public void SetTimeByDelayTime(int time) { if (time > 0) { @@ -205,7 +232,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 +260,7 @@ { if (scene.RemainTime > 0 && scene.SceneDelayTime == 0) { + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneIsDelaying)); return; } //1鎴愬姛 0澶辫触 @@ -248,22 +283,22 @@ { return; } - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.ControlSceneFail); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.ControlSceneFail)); } - var times = scene.SceneDelayTime; - scene.RemainTime = times; + scene.RemainTime = scene.SceneDelayTime; scene.SceneDelayTime = 0; + Common.Room.CurrentRoom.ModifySceneDelayTime(scene); 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(() => { @@ -280,16 +315,23 @@ /// <param name="mouseEventArgs"></param> private void CollectionEvent(object sender,MouseEventArgs mouseEventArgs) { - (sender as Button).IsSelected = !(sender as Button).IsSelected; - if ((sender as Button).IsSelected) + if (Common.Room.CurrentRoom.IsLove) { - Shared.Common.Room.CurrentRoom.GetLoveRoom().AddScene(scene); + Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); + CollectionAction?.Invoke(); } else { - Shared.Common.Room.CurrentRoom.GetLoveRoom().RemoveScene(scene); + (sender as Button).IsSelected = !(sender as Button).IsSelected; + if ((sender as Button).IsSelected) + { + Common.Room.CurrentRoom.GetLoveRoom().AddScene(scene); + } + else + { + Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); + } } - scene.Save(); } /// <summary> @@ -301,16 +343,19 @@ { if (scene.RemainTime > 0) { + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneIsDelaying)); return; } var timeSelect = new SelectTime(); CommonPage.Instance.AddChidren(timeSelect); - timeSelect.TempTime = scene.DelayTime; + timeSelect.TempTime = scene.SceneDelayTime; timeSelect.Init(); timeSelect.TimeAction = (t) => { scene.SceneDelayTime = t; - SetIimeByDelayTime(t); + SetTimeByDelayTime(t); + + Common.Room.CurrentRoom.ModifySceneDelayTime(scene); }; } -- Gitblit v1.8.0