wei
2021-05-13 565f7ae8ef01916cb435153a8a01ddd5c5f70c48
HDL_ON/UI/UI0-Public/PublicAssmebly.cs
@@ -3,6 +3,7 @@
using System.Text.RegularExpressions;
using System.Threading;
using HDL_ON.Entity;
using HDL_ON.Stan;
using HDL_ON.UI.CSS;
using Shared;
@@ -572,152 +573,177 @@
        /// 场景延时设置弹窗
        /// </summary>
        /// <param name="function"></param>
        public void SetSceneDelayDialog(Dictionary<string,string>items, Action<string> action,string curItemKey)
        public void SetSceneDelayDialog(Action<string> action,string curItemKey)//Dictionary<string,string>items,
        {
            Button lastButton = new Button();
            Dialog dialog = new Dialog();
            var pView = new FrameLayout()
            List<int> mRange = new List<int>();
            List<int> sRange = new List<int>();
            for (int i = 0; i <= 59; i++)
            {
                BackgroundColor = CSS_Color.DialogTransparentColor1,
            };
            dialog.AddChidren(pView);
            var itemCount = items.Count;
            var optionBaseViewHeight = ((itemCount > 3 ? itemCount : 3) + 1) * Application.GetRealHeight(50);
            var optionBaseView = new FrameLayout()
            {
                //Y = Application.GetRealHeight(439),
                Y = Application.GetRealHeight(647) - optionBaseViewHeight,
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(343),
                //Height = Application.GetRealHeight(208),
                Height = optionBaseViewHeight,
                //AnimateSpeed = 0.3f,
                //Animate = Animate.DownToUp,
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
            };
            pView.AddChidren(optionBaseView);
            var topView = new FrameLayout()
            {
                Gravity = Gravity.CenterHorizontal,
                Width = Application.GetRealWidth(343),
                Height = Application.GetRealHeight(50),
                BackgroundColor = CSS_Color.MainBackgroundColor,
                Radius = (uint)Application.GetRealWidth(12),
            };
            optionBaseView.AddChidren(topView);
            var btnTitle = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                TextAlignment = TextAlignment.Center,
                Width = Application.GetRealWidth(100),
                TextID = StringId.SceneDelay,
                IsBold = true,
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
            };
            topView.AddChidren(btnTitle);
            var btnCancel = new Button()
            {
                X = Application.GetRealWidth(21),
                Width = Application.GetRealWidth(100),
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.PromptingColor1,
                TextSize = CSS_FontSize.TextFontSize,
                TextID = StringId.Cancel,
            };
            topView.AddChidren(btnCancel);
            var btnConfrim = new Button()
            {
                X = Application.GetRealWidth(160),
                Width = Application.GetRealWidth(160),
                TextAlignment = TextAlignment.CenterRight,
                TextColor = CSS_Color.MainColor,
                TextSize = CSS_FontSize.TextFontSize,
                TextID = StringId.Confirm,
            };
            topView.AddChidren(btnConfrim);
            var itemsView = new VerticalScrolViewLayout()
            {
                Y = topView.Bottom,
                Height = optionBaseViewHeight - Application.GetRealHeight(50),
                ScrollEnabled = itemCount > 4,
            };
            optionBaseView.AddChidren(itemsView);
            bool isFrist = true;
            Button btnLastSelectedTip = null;
            foreach (var item in items)
            {
                if (isFrist)
                {
                    isFrist = false;
                }
                else
                {
                    itemsView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
                }
                var row = new FrameLayout()
                {
                    Height = Application.GetRealHeight(50),
                };
                itemsView.AddChidren(row);
                var btnTipSelected = new Button()
                {
                    X = Application.GetRealWidth(303),
                    Gravity = Gravity.CenterVertical,
                    Width = Application.GetRealWidth(28),
                    Height= Application.GetRealWidth(28),
                    UnSelectedImagePath = "Public/ChooseIcon.png",
                    SelectedImagePath = "Public/ChooseOnIcon.png",
                };
                row.AddChidren(btnTipSelected);
                if( item.Key == curItemKey)
                {
                    btnTipSelected.IsSelected = true;
                    btnLastSelectedTip = btnTipSelected;
                }
                var btnRowTitle = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Text = item.Value,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextAlignment = TextAlignment.CenterLeft,
                };
                row.AddChidren(btnRowTitle);
                btnRowTitle.MouseUpEventHandler = (sender, e) =>
                {
                    if (btnTipSelected.IsSelected)
                    {
                        curItemKey = "0";
                        btnTipSelected.IsSelected = false;
                        btnLastSelectedTip = null;
                    }
                    else
                    {
                        curItemKey = item.Key;
                        if (btnLastSelectedTip != null)
                        {
                            btnLastSelectedTip.IsSelected = false;
                        }
                        btnTipSelected.IsSelected = true;
                        btnLastSelectedTip = btnTipSelected;
                    }
                };
                mRange.Add(i);
                sRange.Add(i);
            }
            sRange.Add(60);
            BottomTimeSelectControl timeControl = new BottomTimeSelectControl(mRange, sRange, 5, Language.StringByID(StringId.SceneDelay));
            timeControl.RowHeight = Application.GetRealHeight(50);
            timeControl.InitControl(0, 0, 262, false);
            timeControl.ChangePickerEvent2();
            timeControl.FinishEvent = (type, hours, min) =>
            {
                if(type == 1)
                {
                    curItemKey = (hours * 60 + min).ToString();
                    action(curItemKey);
                }
            };
            return;
            //    Button lastButton = new Button();
            //Dialog dialog = new Dialog();
            //var pView = new FrameLayout()
            //{
            //    BackgroundColor = CSS_Color.DialogTransparentColor1,
            //};
            //dialog.AddChidren(pView);
            //var itemCount = items.Count;
            //var optionBaseViewHeight = ((itemCount > 3 ? itemCount : 3) + 1) * Application.GetRealHeight(50);
            //var optionBaseView = new FrameLayout()
            //{
            //    //Y = Application.GetRealHeight(439),
            //    Y = Application.GetRealHeight(647) - optionBaseViewHeight,
            //    Gravity = Gravity.CenterHorizontal,
            //    Width = Application.GetRealWidth(343),
            //    //Height = Application.GetRealHeight(208),
            //    Height = optionBaseViewHeight,
            //    //AnimateSpeed = 0.3f,
            //    //Animate = Animate.DownToUp,
            //    BackgroundColor = CSS_Color.MainBackgroundColor,
            //    Radius = (uint)Application.GetRealWidth(12),
            //};
            //pView.AddChidren(optionBaseView);
            //var topView = new FrameLayout()
            //{
            //    Gravity = Gravity.CenterHorizontal,
            //    Width = Application.GetRealWidth(343),
            //    Height = Application.GetRealHeight(50),
            //    BackgroundColor = CSS_Color.MainBackgroundColor,
            //    Radius = (uint)Application.GetRealWidth(12),
            //};
            //optionBaseView.AddChidren(topView);
            //var btnTitle = new Button()
            //{
            //    Gravity = Gravity.CenterHorizontal,
            //    TextAlignment = TextAlignment.Center,
            //    Width = Application.GetRealWidth(100),
            //    TextID = StringId.SceneDelay,
            //    IsBold = true,
            //    TextColor = CSS_Color.FirstLevelTitleColor,
            //    TextSize = CSS_FontSize.SubheadingFontSize,
            //};
            //topView.AddChidren(btnTitle);
            //var btnCancel = new Button()
            //{
            //    X = Application.GetRealWidth(21),
            //    Width = Application.GetRealWidth(100),
            //    TextAlignment = TextAlignment.CenterLeft,
            //    TextColor = CSS_Color.PromptingColor1,
            //    TextSize = CSS_FontSize.TextFontSize,
            //    TextID = StringId.Cancel,
            //};
            //topView.AddChidren(btnCancel);
            //var btnConfrim = new Button()
            //{
            //    X = Application.GetRealWidth(160),
            //    Width = Application.GetRealWidth(160),
            //    TextAlignment = TextAlignment.CenterRight,
            //    TextColor = CSS_Color.MainColor,
            //    TextSize = CSS_FontSize.TextFontSize,
            //    TextID = StringId.Confirm,
            //};
            //topView.AddChidren(btnConfrim);
            //var itemsView = new VerticalScrolViewLayout()
            //{
            //    Y = topView.Bottom,
            //    Height = optionBaseViewHeight - Application.GetRealHeight(50),
            //    ScrollEnabled = itemCount > 4,
            //};
            //optionBaseView.AddChidren(itemsView);
            //bool isFrist = true;
            //Button btnLastSelectedTip = null;
            //foreach (var item in items)
            //{
            //    if (isFrist)
            //    {
            //        isFrist = false;
            //    }
            //    else
            //    {
            //        itemsView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
            //    }
            //    var row = new FrameLayout()
            //    {
            //        Height = Application.GetRealHeight(50),
            //    };
            //    itemsView.AddChidren(row);
            //    var btnTipSelected = new Button()
            //    {
            //        X = Application.GetRealWidth(303),
            //        Gravity = Gravity.CenterVertical,
            //        Width = Application.GetRealWidth(28),
            //        Height= Application.GetRealWidth(28),
            //        UnSelectedImagePath = "Public/ChooseIcon.png",
            //        SelectedImagePath = "Public/ChooseOnIcon.png",
            //    };
            //    row.AddChidren(btnTipSelected);
            //    if( item.Key == curItemKey)
            //    {
            //        btnTipSelected.IsSelected = true;
            //        btnLastSelectedTip = btnTipSelected;
            //    }
            //    var btnRowTitle = new Button()
            //    {
            //        X = Application.GetRealWidth(16),
            //        Text = item.Value,
            //        TextSize = CSS_FontSize.TextFontSize,
            //        TextColor = CSS_Color.FirstLevelTitleColor,
            //        TextAlignment = TextAlignment.CenterLeft,
            //    };
            //    row.AddChidren(btnRowTitle);
            //    btnRowTitle.MouseUpEventHandler = (sender, e) =>
            //    {
            //        if (btnTipSelected.IsSelected)
            //        {
            //            curItemKey = "0";
            //            btnTipSelected.IsSelected = false;
            //            btnLastSelectedTip = null;
            //        }
            //        else
            //        {
            //            curItemKey = item.Key;
            //            if (btnLastSelectedTip != null)
            //            {
            //                btnLastSelectedTip.IsSelected = false;
            //            }
            //            btnTipSelected.IsSelected = true;
            //            btnLastSelectedTip = btnTipSelected;
            //        }
            //    };
            //}
            //Button btn1 = new Button()
            //{
@@ -801,22 +827,22 @@
            dialog.Show();
            //dialog.Show();
            pView.MouseUpEventHandler = (sender, e) =>
            {
                dialog.Close();
            };
            //pView.MouseUpEventHandler = (sender, e) =>
            //{
            //    dialog.Close();
            //};
            btnCancel.MouseUpEventHandler = (sender, e) =>
            {
                dialog.Close();
            };
            btnConfrim.MouseUpEventHandler = (sender, e) =>
            {
                action(curItemKey);
                dialog.Close();
            };
            //btnCancel.MouseUpEventHandler = (sender, e) =>
            //{
            //    dialog.Close();
            //};
            //btnConfrim.MouseUpEventHandler = (sender, e) =>
            //{
            //    action(curItemKey);
            //    dialog.Close();
            //};
            //btn1.MouseUpEventHandler = (sender, e) => {
            //    btn1.IsSelected = !btn1.IsSelected;
            //    btn2.IsSelected = false;