From 64390bc739286477167e186f1f2b40a27a73a9a5 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期二, 02 三月 2021 17:31:01 +0800
Subject: [PATCH] 20210302-1

---
 HDL_ON/UI/UI0-Stan/Controls/BottomControls/BottomTimeSelectControl.cs |  103 ++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 88 insertions(+), 15 deletions(-)

diff --git a/HDL_ON/UI/UI0-Stan/Controls/BottomControls/BottomTimeSelectControl.cs b/HDL_ON/UI/UI0-Stan/Controls/BottomControls/BottomTimeSelectControl.cs
index 66dcb23..49c40dd 100644
--- a/HDL_ON/UI/UI0-Stan/Controls/BottomControls/BottomTimeSelectControl.cs
+++ b/HDL_ON/UI/UI0-Stan/Controls/BottomControls/BottomTimeSelectControl.cs
@@ -17,6 +17,26 @@
         /// 缁撴潫浜嬩欢(0:鐐瑰嚮浜嗗彇娑�  1:鐐瑰嚮浜嗙‘瀹�,绗簩,涓夊弬鏁颁负鏃跺拰鍒�)
         /// </summary>
         public Action<int, int, int> FinishEvent = null;
+        /// <summary>
+        /// 灏忔椂鍙栧�艰寖鍥�
+        /// </summary>
+        List<int> hRange = new List<int>();
+        /// <summary>
+        /// 鍒嗛挓鍙栧�艰寖鍥�
+        /// </summary>
+        List<int> mRange = new List<int>();
+        /// <summary>
+        /// 鏃堕棿鎺т欢
+        /// </summary>
+        UIPickerView pickerView;
+        //閫夋嫨鐨勬椂涓庡垎
+        int selectHour = 0;
+        int selectMinute = 0;
+        //XX鏃�
+        List<string> listHour ;
+        //XX鍒�
+        List<string> listMinute;
+
 
         #endregion
 
@@ -30,7 +50,35 @@
         public BottomTimeSelectControl(string i_title = "", bool clickBackClose = true)
         {
             base.ClickBackClose = clickBackClose;
+            base.StrTitle = i_title;
+
+
+            for (int i = 0; i <= 23; i++)
+            {
+                hRange.Add(i);
+            }
+            for (int i = 0; i <= 59; i++)
+            {
+                mRange.Add(i);
+            }
+        }
+
+
+        /// <summary>
+        /// 搴曢儴鏃堕棿閫夋嫨鎺т欢
+        /// </summary>
+        /// <param name="i_title">鏍囬</param>
+        /// <param name="clickBackClose">鐐瑰嚮鑳屾櫙鏃�,鏄惁鍏抽棴寮圭獥</param>
+        public BottomTimeSelectControl(List<int> hoursRange,List<int> minuteRange ,int rowCount, string i_title = "", bool clickBackClose = true)
+        {
+            base.ClickBackClose = clickBackClose;
             base.StrTitle = i_title;
+
+            hRange = hoursRange;
+            mRange = minuteRange;
+
+            base.RowCount = rowCount;
+
         }
 
         /// <summary>
@@ -38,19 +86,16 @@
         /// </summary>
         /// <param name="i_hour">榛樿閫夋嫨鏃�</param>
         /// <param name="i_minute">榛樿閫夋嫨鍒�</param>
-        public void InitControl(int i_hour, int i_minute)
+        /// <param name="contentView">閫夋嫨鍖哄煙楂樺害</param>
+        public void InitControl(int i_hour, int i_minute,int contentView = 297)
         {
             //宸茬粡鍒濆鍖�
             if (base.btnCancel != null) { return; }
 
             //鍒濆鍖栧簳灞傛帶浠�
             var frameWhiteBack = base.InitBaseControl();
-            frameWhiteBack.Height = Application.GetRealHeight(297);
-            frameWhiteBack.Y = frameWhiteBack.Parent.Height - Application.GetRealHeight(297 + 20);
-
-            //閫夋嫨鐨勬椂涓庡垎
-            int selectHour = 0;
-            int selectMinute = 0;
+            frameWhiteBack.Height = Application.GetRealHeight(contentView);
+            //frameWhiteBack.Y = frameWhiteBack.Parent.Height - Application.GetRealHeight(297 + 20);
 
             //鍙栨秷
             base.btnCancel.ButtonClickEvent += (sender, e) =>
@@ -78,22 +123,24 @@
             frameWhiteBack.AddChidren(btnLine);
 
             //鏃堕棿鎺т欢
-            var pickerView = new UIPickerView();
+            pickerView = new UIPickerView();
             //鏃�
             var strhour = Language.StringByID(StringId.h);
             //鍒�
             var strMinute = Language.StringByID(StringId.m);
             //XX鏃�
-            var listHour = new List<string> { "00" + strhour };
+            listHour = new List<string>();// { "00" + strhour };
             //XX鍒�
-            var listMinute = new List<string> { "00" + strMinute };
-            for (int i = 1; i <= 23; i++)
+            listMinute = new List<string>();// { "00" + strMinute };
+            //for (int i = 1; i <= 23; i++)
+            foreach(var hItem in hRange)
             {
-                listHour.Add(i.ToString().PadLeft(2, '0') + strhour);
-            }
-            for (int i = 1; i <= 59; i++)
+                listHour.Add(hItem.ToString().PadLeft(2, '0') + strhour);
+            }
+            //for (int i = 1; i <= 59; i++)
+            foreach (var mItem in mRange)
             {
-                listMinute.Add(i.ToString().PadLeft(2, '0') + strMinute);
+                listMinute.Add(mItem.ToString().PadLeft(2, '0') + strMinute);
             }
             pickerView.Height = frameWhiteBack.Height - btnLine.Bottom;
             pickerView.Width = frameWhiteBack.Width - Application.GetRealWidth(8) * 2;
@@ -117,6 +164,32 @@
             };
         }
 
+        /// <summary>
+        /// 鐗规畩鐨勯泦鍚堥�夋嫨浜嬩欢锛屽噳闇告椂闂磋缃娇鐢�
+        /// </summary>
+        public void ChangePickerEvent()
+        {
+            pickerView.OnSelectChangeEvent = (value1, value2, value3) =>
+            {
+                if (value1 == 0 && value2 == 0)
+                {
+                    value2 = 1;
+                    pickerView.setCurrentItems(value1, value2, 0);
+                }
+                else if (value1 == 4 && value2 == 1)
+                {
+                    value2 = 0;
+                    pickerView.setCurrentItems(value1, value2, 0);
+                }
+                else
+                {
+                    //鏇存敼绱㈠紩
+                    selectHour = Convert.ToInt32(listHour[value1].Substring(0, 2));
+                    selectMinute = Convert.ToInt32(listMinute[value2].Substring(0, 2));
+                }
+            };
+        }
+
         #endregion
 
         #region 鈻� 涓�鑸柟娉昣__________________________

--
Gitblit v1.8.0