From d6fb0646531172f23648441c224cdcccd721b894 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期一, 14 十二月 2020 09:59:01 +0800 Subject: [PATCH] 请合并代码,完成晾衣架最终功能。 --- ZigbeeApp/Shared/Phone/Category/AdjustTargetAddDelayTimeForm.cs | 162 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 162 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddDelayTimeForm.cs b/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddDelayTimeForm.cs new file mode 100755 index 0000000..2173df9 --- /dev/null +++ b/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddDelayTimeForm.cs @@ -0,0 +1,162 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared.Phone.UserCenter; + +namespace Shared.Phone.Category +{ + /// <summary> + /// 鍦烘櫙鎵ц鐩爣娣诲姞寤舵椂鐨勭晫闈� + /// </summary> + public class AdjustTargetAddDelayTimeForm : EditorCommonForm + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 纭畾閫夋嫨鐨勪簨浠� + /// </summary> + public Action<int> FinishSelectEvent = null; + + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓) + /// </summary> + /// <param name="i_delayTime">寤舵椂鏃堕棿</param> + public void ShowForm(int i_delayTime) + { + //璁剧疆澶撮儴淇℃伅 + base.SetTitleText(Language.StringByID(R.MyInternationalizationString.AddDelayTime)); + + //鍒濆鍖栦腑閮ㄤ俊鎭� + this.InitMiddleFrame(i_delayTime); + } + + /// <summary> + /// 鍒濆鍖栦腑閮ㄤ俊鎭� + /// </summary> + private void InitMiddleFrame(int i_delayTime) + { + int selectTime = i_delayTime; + if (selectTime == 0) + { + //榛樿1绉� + selectTime = 1; + } + + //鍥炬爣绗竴灞傚簳鑹� + var frameFirstBack = new FrameLayout(); + frameFirstBack.Y = Application.GetRealHeight(118); + frameFirstBack.Height = this.GetPictrueRealSize(207); + frameFirstBack.Width = this.GetPictrueRealSize(207); + frameFirstBack.BackgroundColor = UserCenterColor.Current.White; + frameFirstBack.Radius = (uint)this.GetPictrueRealSize(207) / 2; + frameFirstBack.Gravity = Gravity.CenterHorizontal; + bodyFrameLayout.AddChidren(frameFirstBack); + //闃叉鍑虹幇璇樊 + int iconWidth = this.GetPictrueRealSize(207) - this.GetPictrueRealSize(12) - this.GetPictrueRealSize(12); + //鍥炬爣绗簩灞傚簳鑹� + var btnSecondBack = new NormalViewControl(iconWidth, iconWidth, false); + btnSecondBack.BackgroundColor = 0xfffef1ed; + btnSecondBack.Radius = (uint)iconWidth / 2; + btnSecondBack.Gravity = Gravity.Center; + frameFirstBack.AddChidren(btnSecondBack); + //鍥炬爣 + var btnIcon = new IconViewControl(124); + btnIcon.UnSelectedImagePath = "Item/Timer.png"; + btnIcon.Gravity = Gravity.Center; + frameFirstBack.AddChidren(btnIcon); + + //涓轰綘鐨勫姩浣滃垱寤烘椂闂撮棿闅� + var btnMsg = new NormalViewControl(700, 62, true); + btnMsg.Y = frameFirstBack.Bottom + Application.GetRealHeight(34); + btnMsg.TextSize = 15; + btnMsg.TextID = R.MyInternationalizationString.SelectTimeForAction; + btnMsg.TextAlignment = TextAlignment.Center; + btnMsg.Gravity = Gravity.CenterHorizontal; + bodyFrameLayout.AddChidren(btnMsg); + + //鐧借壊鑳屾櫙鎺т欢 + var frameWhiteBack = new FrameLayout(); + frameWhiteBack.BackgroundColor = UserCenterColor.Current.White; + frameWhiteBack.Y = Application.GetRealHeight(611); + frameWhiteBack.Height = Application.GetRealHeight(1500);//瓒呰繃搴曢儴鍗冲彲 + frameWhiteBack.Radius = (uint)Application.GetRealHeight(58); + bodyFrameLayout.AddChidren(frameWhiteBack); + //婊戝姩鎺т欢 + var pickView = new UIPickerView(); + pickView.Y = Application.GetRealHeight(127); + pickView.Height = Application.GetRealHeight(153 * 3); + frameWhiteBack.AddChidren(pickView); + + //鍒� + string strMinute = Language.StringByID(R.MyInternationalizationString.uMinute); + //绉� + string strSecond = Language.StringByID(R.MyInternationalizationString.uSecond); + var listfirst = new List<string>(); + var listSecond = new List<List<string>>(); + for (int i = 0; i <= 59; i++) + { + listfirst.Add(i.ToString().PadLeft(2, '0') + strMinute); + var listTemp = new List<string>(); + for (int j = 0; j <= 59; j++) + { + if (i == 0 && j == 0) + { + continue; + } + listTemp.Add(j.ToString().PadLeft(2, '0') + strSecond); + } + listSecond.Add(listTemp); + } + //鍔犱竴涓�60鍒嗛挓鍚� + listfirst.Add("60" + strMinute); + var listTemp2 = new List<string>() { "00" + strSecond }; + listSecond.Add(listTemp2); + + int firstIndex = selectTime / 60; + int secondIndex = selectTime % 60; + //鍥犱负0鍒嗙殑鏃跺�欙紝瀹冩槸浠�1绉掑紑濮嬬殑锛屾墍浠ュ畠鐨勭储寮曢渶瑕�-1 + if (firstIndex == 0) { secondIndex--; } + + pickView.setPicker(listfirst, listSecond); + pickView.setCurrentItems(firstIndex, secondIndex, 0); + pickView.OnSelectChangeEvent += (value1, value2, value3) => + { + int minute = Convert.ToInt32(listfirst[value1].Substring(0, 2)); + int second = Convert.ToInt32(listSecond[value1][value2].Substring(0, 2)); + selectTime = minute * 60 + second; + }; + + //瀹屾垚鎸夐挳 + var btnSave = new BottomClickButton(); + btnSave.TextID = R.MyInternationalizationString.uSave; + bodyFrameLayout.AddChidren(btnSave); + btnSave.ButtonClickEvent += (sender, e) => + { + //閫夋嫨鐨勬槸鍚屼竴涓椂闂�,鍒欎笉瑙﹀彂鍥炶皟鍑芥暟 + if (i_delayTime == selectTime) { this.CloseForm(); } + //璋冪敤鍥炶皟鍑芥暟 + this.FinishSelectEvent?.Invoke(selectTime); + this.CloseForm(); + }; + } + + #endregion + + #region 鈻� 鐣岄潰鍏抽棴___________________________ + + /// <summary> + /// 鐣岄潰鍏抽棴 + /// </summary> + public override void CloseFormBefore() + { + this.FinishSelectEvent = null; + + base.CloseFormBefore(); + } + + #endregion + } +} -- Gitblit v1.8.0