wxr
2020-12-01 a46cd0adb5af29e8a9cf47c219475acaedfcf839
HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
New file
@@ -0,0 +1,269 @@
using System;
using Shared;
using System.Collections.Generic;
namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView
{
    public class TimeView
    {
        /// <summary>
        /// 主控件
        /// </summary>
        public FrameLayout frameLayout = new FrameLayout
        {
            Y = Application.GetRealHeight(350),
            Height = Application.GetRealHeight(297),
            Width = Application.GetRealWidth(343),
            X = Application.GetRealWidth(16),
            BackgroundColor = CSS.CSS_Color.view,
            Radius=(uint)Application.GetRealHeight(12),
        };
        /// <summary>
        /// 时间控件UIPickerView
        /// </summary>
        public UIPickerView mUIPickerView = new UIPickerView
        {
            //Y = Application.GetRealHeight(44),
            Height = Application.GetRealHeight(297),
            Width = Application.GetRealWidth(343),
            BackgroundColor = CSS.CSS_Color.viewTranslucence,
        };
        /// <summary>
        /// 取消Btn
        /// </summary>
        public Button btnCancel = new Button
        {
            TextID = StringId.cancelSelected,
            TextSize = TextSize.text14,
            TextColor = CSS.CSS_Color.textCancelColor,
            Width = Application.GetRealWidth(52),
            Height = Application.GetRealHeight(32),
            Y = Application.GetRealHeight(6),
            X = Application.GetRealWidth(8)
        };
        /// <summary>
        /// 确定Btn
        /// </summary>
        public Button btnConfirm = new Button
        {
            TextID = StringId.confirmSelected,
            TextSize = TextSize.text14,
            TextColor = CSS.CSS_Color.textConfirmColor,
            Width = Application.GetRealWidth(52),
            Height = Application.GetRealHeight(32),
            X = Application.GetRealWidth(283),
            Y = Application.GetRealHeight(6),
        };
        /// <summary>
        ///  线
        /// </summary>
        public Button btnLine = new Button
        {
            BackgroundColor = CSS.CSS_Color.viewLine,
            Width = Application.GetRealWidth(343),
            Height = 1,
            Y = Application.GetRealWidth(44)
        };
        /// <summary>
        /// 时间View的方法
        /// </summary>
        /// <returns></returns>
        public void FLayoutView(FrameLayout fLayout)
        {
            frameLayout.AddChidren(mUIPickerView);
            frameLayout.AddChidren(btnCancel);
            frameLayout.AddChidren(btnConfirm);
            frameLayout.AddChidren(btnLine);
            fLayout.AddChidren(frameLayout);
        }
        /// <summary>
        /// 获取1-24小时列表
        /// </summary>
        /// <returns></returns>
        public List<string> GethStringList()
        {
            //初始化列表
            var hList = new List<string>();
            for (int i = 1; i < 24; i++)
            {
                if (i < 10)
                {
                    var a = "0" + i.ToString();
                    //添加数据
                    hList.Add(a + " " + Language.StringByID(StringId.h));
                }
                else
                {
                    //添加数据
                    hList.Add(i.ToString() + " " + Language.StringByID(StringId.h));
                }
            }
            return hList;
        }
        /// <summary>
        /// 获取0-23小时列表
        /// </summary>
        /// <returns></returns>
        public List<string> GethStringList0()
        {
            //初始化列表
            var hList = new List<string>();
            for (int i = 0; i < 23; i++)
            {
                if (i < 10)
                {
                    var a = "0" + i.ToString();
                    //添加数据
                    hList.Add(a + " " + Language.StringByID(StringId.h));
                }
                else
                {
                    //添加数据
                    hList.Add(i.ToString() + " " + Language.StringByID(StringId.h));
                }
            }
            return hList;
        }
        /// <summary>
        /// 获取60分钟列表
        /// </summary>
        /// <returns></returns>
        public List<string> GetmStringList()
        {
            //初始化列表
            var mList = new List<string>();
            for (int i = 0; i < 60; i++)
            {
                if (i < 10)
                {
                    var a = "0" + i.ToString();
                    //添加数据
                    mList.Add(a + " " + Language.StringByID(StringId.m));
                }
                else
                {
                    //添加数据
                    mList.Add(i.ToString() + " " + Language.StringByID(StringId.m));
                }
            }
            return mList;
        }
        /// <summary>
        /// 获取023小时列表
        /// </summary>
        /// <returns></returns>
        public List<int> GethIntList0()
        {
            //初始化列表
            var hList = new List<int>();
            for (int i = 1; i < 24; i++)
            {
                //添加数据
                hList.Add(i);
            }
            return hList;
        }
        /// <summary>
        /// 获取24小时列表
        /// </summary>
        /// <returns></returns>
        public List<int> GethIntList()
        {
            //初始化列表
            var hList = new List<int>();
            for (int i = 1; i < 24; i++)
            {
                //添加数据
                hList.Add(i);
            }
            return hList;
        }
        /// <summary>
        /// 获取60分钟列表
        /// </summary>
        /// <returns></returns>
        public List<int> GetmIntList()
        {
            //初始化列表
            var mList = new List<int>();
            for (int i = 0; i < 60; i++)
            {
                //添加数据
                mList.Add(i);
            }
            return mList;
        }
        /// <summary>
        /// 返回指定单位列表
        /// </summary>
        /// <param name="min">最小值</param>
        /// <param name="max">最大值</param>
        /// <param name="name">单位(时,分,秒)</param>
        /// <param name="digit">位数(10以下用(1位还是2位)显示)</param>
        /// <returns></returns>
        public List<string> GetStringList(int min, int max, string name, int digit)
        {
            //初始化列表
            var list = new List<string>();
            for (int i = min; i < max; i++)
            {
                if (i < 10 && digit == 2)
                {
                    var a = "0" + i.ToString();
                    //添加数据
                    list.Add(a + " " + name);
                }
                else
                {
                    //添加数据
                    list.Add(i.ToString() + " " + name);
                }
            }
            return list;
        }
        /// <summary>
        /// 获取时间值
        /// </summary>
        /// <param name="str">源数据</param>
        /// <param name="digit">返回源数据数组里面某个值索引</param>
        /// <param name="startIndex"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        public int GetValueIndex(string str, int digit, int startIndex, List<int> list)
        {
            int index = 0;
            int value = 0;
            if (str.Contains(":"))
            {
                value = int.Parse(str.Split(':')[digit]);
            }
            for (int i = startIndex; i < list.Count; i++)
            {
                if (value == i)
                {
                    index = i;
                    break;
                }
            }
            return index;
        }
    }
}