From 304dca51c28183a9dfc192c6b93ea1c00bdd5d97 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期三, 01 七月 2020 15:00:40 +0800 Subject: [PATCH] 添加了写入功能类型 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelBackLighWithSensorForm.cs | 168 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 158 insertions(+), 10 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelBackLighWithSensorForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelBackLighWithSensorForm.cs index b2814b2..37db0f1 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelBackLighWithSensorForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelBackLighWithSensorForm.cs @@ -12,7 +12,6 @@ /// 鍒楄〃鎺т欢 /// </summary> private VerticalScrolViewLayout listview = null; - /// <summary> /// 闈㈡澘鐨勫洖璺� /// </summary> @@ -33,6 +32,28 @@ /// 鎸夐敭鐨勯鑹叉暟鎹� /// </summary> private Panel.KeyColorData keyColorData = null; + /// <summary> + /// 閫夋嫨鐫$湢鏃堕棿鐨勪簨浠� value:绱㈠紩(浠�0寮�濮�) 鏂囨湰淇℃伅璇风敤Text鑾峰彇 + /// </summary> + public Action<int> timeAction = null; + /// <summary> + /// 褰撳墠閫夋嫨鐨勫姛鑳界被鍨嬬储寮� + /// </summary> + private int nowSelectNo = 0; + /// <summary> + /// /// <summary> + /// 鐫$湢鏃堕棿鐨勫�� + /// </summary> + /// </summary> + public string sleepTimeText + { + get { return btnSleepTime.Text; } + set { btnSleepTime.Text = value; } + } + /// <summary> + ///鐫$湢鏃堕棿 + /// </summary> + public NormalViewControl btnSleepTime = null; #endregion @@ -109,7 +130,7 @@ /// <param name="frameLinght">鍚勭鑳屽厜鐏殑瀹瑰櫒(鎺т欢浼哥缉浣跨敤)</param> private void AddEnergyConservationRow() { - //缂╁皬:170 鎵╁ぇ:429 + //缂╁皬:170 鎵╁ぇ:614 var frameBack = new FrameRowControl(); frameBack.BackgroundColor = UserCenterColor.Current.White; frameBack.UseClickStatu = false; @@ -125,7 +146,7 @@ btnSwitch.IsSelected = !btnSwitch.IsSelected; energyModeInfo.enable = btnSwitch.IsSelected; //灞曞紑鎴栬�呯缉灏忕殑楂樺害 - var value = Application.GetRealHeight(443); + var value = Application.GetRealHeight(614); if (btnSwitch.IsSelected == true) { frameBack.Height += value; @@ -191,12 +212,23 @@ if (energyModeInfo.enable == true) { //灞曞紑鎴栬�呯缉灏忕殑楂樺害 - var value = Application.GetRealHeight(443); + var value = Application.GetRealHeight(614); frameBack.Height += value; } //娣诲姞鎺ヨ繎鎰熷簲 this.AddProximitySensorsRow(frameBack); + + //搴曠嚎 + var btnLine = new NormalViewControl(965, 5, true); + btnLine.Height = 1; + btnLine.X = Application.GetRealWidth(52); + btnLine.Y = Application.GetRealHeight(484 + 127); + btnLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + frameBack.AddChidren(btnLine); + + //娣诲姞鐫$湢鏃堕棿 + this.AddSleepTimeRow(frameBack); } #endregion @@ -230,6 +262,100 @@ { btnSwitch.IsSelected = true; } + } + #endregion + + #region 鈻� 鐫$湢鏃堕棿___________________________ + + /// <summary> + /// 鐫$湢鏃堕棿琛� + /// </summary> + private void AddSleepTimeRow(FrameRowControl frameRowControl) + { + //鐫$湢鏃堕棿琛� + var frameBack = new FrameRowControl(); + frameBack.BackgroundColor = UserCenterColor.Current.White; + frameBack.UseClickStatu = false; + frameBack.Y = Application.GetRealHeight(784 - 170); + frameBack.Height = Application.GetRealHeight(170); + frameRowControl.AddChidren(frameBack); + + //鐫$湢鏃堕棿 + frameBack.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.SleepTime), 400); + //鍙崇澶� + frameBack.AddRightArrow(); + btnSleepTime = new NormalViewControl(700, true); + switch (energyModeInfo.time) + { + case 15: + btnSleepTime.Text = "15s"; + nowSelectNo = 0; + break; + case 60: + btnSleepTime.Text = "1min"; + nowSelectNo = 1; + break; + case 300: + btnSleepTime.Text = "5min"; + nowSelectNo = 2; + break; + } + frameBack.AddMostRightView(this.sleepTimeText, 700); + + timeAction = null; + timeAction += (nowSelectNo) => + { + switch (nowSelectNo) + { + case 0: + energyModeInfo.time = 15; + break; + case 1: + energyModeInfo.time = 60; + break; + case 2: + energyModeInfo.time = 300; + break; + } + AddSleepTimeRow(frameRowControl); + }; + frameBack.ButtonClickEvent += (sender, e) => + { + this.ShowSelectDeviceSleepTimeListForm(); + }; + } + #endregion + + #region 鈻� 鏄剧ず閫夋嫨璁惧鐫$湢鏃堕棿_______________ + /// <summary> + /// 鏄剧ず閫夋嫨璁惧鐫$湢鏃堕棿鐨勭晫闈� + /// </summary> + public void ShowSelectDeviceSleepTimeListForm() + { + //鏄剧ず鍒楄〃 + var listText = new List<string>(); + listText.Add("15s"); + listText.Add("1min"); + listText.Add("5min"); + //鏍囬:閫夋嫨鍔熻兘绫诲瀷 + var title = Language.StringByID(R.MyInternationalizationString.SleepTime); + + var form = new BottomItemSelectForm(); + form.CancelCallEvent = false;//鍏佽鍙栨秷 + form.AddForm(title, listText, nowSelectNo); + form.FinishSelectEvent += (selectNo) => + { + if (selectNo == nowSelectNo) + { + //閫夋嫨鐨勬槸鐩稿悓鐨� + return; + } + //-1:閫夋嫨鍙栨秷 + this.sleepTimeText = selectNo == -1 ? string.Empty : listText[selectNo]; + nowSelectNo = selectNo; + //璋冪敤鍥炶皟鍑芥暟 + this.timeAction?.Invoke(nowSelectNo); + }; } #endregion @@ -512,23 +638,46 @@ frameColor.ButtonClickEvent += (sender, e) => { - PanelColor(btnColor, seekBar1, R1, G1, B1); + PanelAfterColor(btnColor, seekBar1, R1, G1, B1); }; btnColorView.ButtonClickEvent += (sender, e) => { - PanelColor(btnColor, seekBar1, R1, G1, B1); + PanelAfterColor(btnColor, seekBar1, R1, G1, B1); }; btnColor.ButtonClickEvent += (sender, e) => { - PanelColor(btnColor, seekBar1, R1, G1, B1); + PanelAfterColor(btnColor, seekBar1, R1, G1, B1); }; btnColorLine.ButtonClickEvent += (sender, e) => { - PanelColor(btnColor, seekBar1, R1, G1, B1); + PanelAfterColor(btnColor, seekBar1, R1, G1, B1); }; btnRight.ButtonClickEvent += (sender, e) => { - PanelColor(btnColor, seekBar1, R1, G1, B1); + PanelAfterColor(btnColor, seekBar1, R1, G1, B1); + }; + } + + /// <summary> + /// PanelColorBefore + /// </summary> + private void PanelAfterColor(NormalViewControl btnColor, SeekBarControl seekBar1, int R1, int G1, int B1) + { + var form = new PanelColorSelectForm(); + form.AddForm(R1, G1, B1); + form.FinishSelectColorEvent += (Rcolor, Gcolor, Bcolor) => + { + R1 = Rcolor; + G1 = Gcolor; + B1 = Bcolor; + + this.keyColorData.OpenColorR = Convert.ToString(Rcolor, 16); + this.keyColorData.OpenColorG = Convert.ToString(Gcolor, 16); + this.keyColorData.OpenColorB = Convert.ToString(Bcolor, 16); + + btnColor.BackgroundColor = this.GetColorByRGB((byte)Rcolor, (byte)Gcolor, (byte)Bcolor); + //鍙樻洿婊戝姩鏉$殑棰滆壊 + seekBar1.ProgressBarColor = btnColor.BackgroundColor; }; } #endregion @@ -600,7 +749,6 @@ //鑺傝兘妯″紡淇敼(浠栦滑璇撮殢渚夸竴涓洖璺氨琛�) //鑲栧織璞粰鎸夐敭鎺у埗闈㈡澘锛堝洓寮�鍏帶锛夎澶囷紝璇撮粯璁�15绉掓椂闂达紝杩欐牱鎺ヨ繎鎰熷簲鍔熻兘鎵嶅悎鐞� - energyModeInfo.time = 15; result = HdlDevicePanelLogic.Current.SetDeviceEnergyConservationMode(panelDevice, energyModeInfo.enable, energyModeInfo.time, energyModeInfo.level); if (result == false) { -- Gitblit v1.8.0