From 8407d6631ac8f5b65c4a14fa27babaa48026d4ca Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 30 三月 2023 16:13:40 +0800 Subject: [PATCH] Merge branch 'wjc' into Dev-Branch --- HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 160 insertions(+), 13 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs index d5a2001..8ab919c 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs @@ -1,23 +1,49 @@ 锘縰sing System; +using HDL_ON.UI.CSS; using HDL_ON.UI.Music; using Shared; namespace HDL_ON.UI.UI2.FuntionControlView.Video.View { public class ShowDialog { + + private static ShowDialog showDialog; + + public static ShowDialog Currnet + { + get + { + if (showDialog == null) + { + + showDialog = new ShowDialog(); + } + + return showDialog; + + } + } + + + public Dialog dialog; + /// <summary> /// /// </summary> /// <param name="title">鏍囬</param> - /// <param name="action1">鍥炶皟鍑芥暟</param> - /// <param name="action2">鍥炶皟鍑芥暟</param> - public void ClickBox(string title, Action<Dialog> action1, Action<Dialog> action2) + /// <param name="jieTingAction">鍥炶皟鍑芥暟</param> + /// <param name="guanBiAction">鍥炶皟鍑芥暟</param> + public void ClickBox(string title, Action<Dialog> jieTingAction, Action<Dialog> guanBiAction) { - Dialog dialog = new Dialog() + if (dialog != null) + { + //闃叉浜岄噸鐣岄潰 + dialog.Close(); + } + dialog = new Dialog() { BackgroundColor = MusicColor.PopupBackgroundColor, }; - FrameLayout whiteView = new FrameLayout() { X = Application.GetRealWidth(56), @@ -50,7 +76,7 @@ TextColor = MusicColor.TextColor, TextSize = TextSize.Text16, TextAlignment = TextAlignment.CenterLeft, - Text = "鏉ヨ嚜鈥滃洿澧欐満鈥濆懠鍙�", + Text = title, }; whiteView.AddChidren(btnTitle); @@ -77,14 +103,135 @@ guaduanIconBtn.MouseUpEventHandler += (sender, e) => { - action1(dialog); + guanBiAction(dialog); }; jietingIconBtn.MouseUpEventHandler += (sender, e) => { - - action2(dialog); + jieTingAction(dialog); }; + } + + /// <summary> + /// 鍒濆鍖朌ialog + /// </summary> + /// <param name="titleStr">鏍囬</param> + /// <param name="msgStr">鎻愮ず淇℃伅</param> + /// <param name="okAction"></param> + /// <param name="cancelAction"></param> + /// <param name="cancelID"></param> + /// <param name="confirmID"></param> + public void ShowDialogBase(string titleStr, string msgStr, Action okAction, Action cancelAction, int cancelID = StringId.Cancel, int confirmID = StringId.Confirm, bool isAlarmColor = false) + { + if (dialog != null) + { + //闃叉浜岄噸鐣岄潰 + dialog.Close(); + } + dialog = new Dialog() + { + BackgroundColor = MusicColor.PopupBackgroundColor, + }; + + var bodyView = new FrameLayout(); + dialog.AddChidren(bodyView); + + FrameLayout contentView = new FrameLayout() + { + Gravity = Gravity.Center, + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(140), + BackgroundColor = CSS_Color.MainBackgroundColor, + BorderColor = 0x00000000, + BorderWidth = 0, + Radius = (uint)Application.GetMinRealAverage(10), + }; + bodyView.AddChidren(contentView); + + Button btnTitle = new Button() + { + Y = Application.GetRealHeight(20), + Height = Application.GetRealHeight(22), + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextAlignment = TextAlignment.Center, + IsBold = true, + Text = titleStr, + }; + contentView.AddChidren(btnTitle); + int Width135 = Application.GetRealWidth(135); + //鎻愮ず鍐呭鎸夐挳 + Button btnMsg = new Button() + { + Y = btnTitle.Bottom + Application.GetRealHeight(4), + X = Application.GetRealWidth(6), + Height = Application.GetRealHeight(46), + Width = Application.GetRealWidth(258), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.TextualColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + Text = msgStr, + IsMoreLines = true, + }; + contentView.AddChidren(btnMsg); + + Button btnLine = new Button() + { + Y = Application.GetRealHeight(96), + Height = Application.GetRealHeight(1), + Width = Application.GetRealWidth(270 / 2), + BackgroundColor = CSS_Color.DividingLineColor, + }; + contentView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Width135, + Height = Application.GetRealHeight(43), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.TextualColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = cancelID, + }; + contentView.AddChidren(btnCancel); + + Button btnConfirm = new Button() + { + X = contentView.Width - Width135, + Y = btnLine.Y, + Width = Width135, + Height = Application.GetRealHeight(45), + TextAlignment = TextAlignment.Center, + //TextColor = CSS_Color.TextualColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.MainBackgroundColor, + BackgroundColor = CSS_Color.MainColor, + TextID = confirmID, + }; + contentView.AddChidren(btnConfirm); + //渚嬶細鍙充笅鍦嗚 澶у皬涓�50 + int mRectCornerID = HDLUtils.RectCornerBottomRight; + btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID); + + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + cancelAction?.Invoke(); + }; + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + okAction?.Invoke(); + }; + + if (isAlarmColor) + { + btnTitle.TextColor = CSS_Color.WarningColor; + btnConfirm.TextColor = CSS_Color.MainBackgroundColor; + btnConfirm.BackgroundColor = CSS_Color.WarningColor; + } } @@ -94,7 +241,7 @@ /// <param name="str1">鏍囬</param> public void QRcode(string str1) { - Dialog dialog = new Dialog() + Dialog dialog = new Dialog() { BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; @@ -119,18 +266,18 @@ TextSize = TextSize.Text16, TextAlignment = TextAlignment.Center, IsBold = true, - TextID=StringId.linshimima, + TextID = StringId.linshimima, }; whiteView.AddChidren(btnTitle); //瀵嗙爜 Button btnpaw = new Button() { - X=Application.GetRealWidth(100), + X = Application.GetRealWidth(100), Y = Application.GetRealHeight(62), Height = Application.GetRealHeight(32), Width = Application.GetRealWidth(82), TextColor = MusicColor.SelectedColor, - TextSize =24, + TextSize = 24, TextAlignment = TextAlignment.Center, IsBold = true, Text = str1, -- Gitblit v1.8.0