From d724f7f21c5cc8c5dd5aa0cf7345a62a662eb2bf Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 16 十二月 2020 15:12:18 +0800 Subject: [PATCH] 2020-12-16 1.子账号和解锁部分接口增加Loading处理 --- HDL_ON/UI/UI0-Public/PublicAssmebly.cs | 571 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 438 insertions(+), 133 deletions(-) diff --git a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs index 295d325..25523fb 100644 --- a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs +++ b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using System.Collections.Generic; using System.Threading; using HDL_ON.Entity; using HDL_ON.UI.CSS; @@ -8,12 +9,67 @@ { public partial class PublicAssmebly { + + void EditParaterEvent(Button btnConfirm, int errorId_IsNullOrEmpty, int errorId_ContainsPar, List<string> list, EditText editText, Action<string> callBackAction, + FrameLayout contentView, Button btnLine, Button btnCancel, FrameLayout editView, Dialog dialog, int titleId) + { + + var btnTip = new Button() + { + X = editView.X, + Y = editView.Bottom, + Width = Application.GetRealWidth(182), + Height = Application.GetRealHeight(30), + TextColor = CSS_Color.WarningColor, + TextSize = CSS_FontSize.TextFontSize, + IsMoreLines = true, + TextAlignment = TextAlignment.CenterLeft, + }; + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + //btnConfirm.IsSelected = false; + if (string.IsNullOrEmpty(editText.Text.Trim()) || list.Contains(editText.Text.Trim())) + { + if (titleId == StringId.ModifyMemberNickname) + { + return; + } + string tipMsgString = ""; + if (string.IsNullOrEmpty(editText.Text.Trim())) + { + tipMsgString = Language.StringByID(errorId_IsNullOrEmpty); + } + else + { + tipMsgString = Language.StringByID(errorId_ContainsPar); + } + + contentView.Height = Application.GetRealHeight(183); + btnLine.Y = Application.GetRealHeight(139); + btnCancel.Y = btnLine.Bottom; + btnConfirm.Y = btnLine.Bottom; + + btnTip.Text = tipMsgString; + + contentView.AddChidren(btnTip); + + return; + } + + + callBackAction(editText.Text.Trim()); + dialog.Close(); + }; + } + + /// <summary> /// 鍔犺浇淇敼鍙傛暟鐨勫皬寮圭獥 /// 淇濆瓨鎸夐挳浜嬩欢闇�瑕佸皢 /// </summary> /// <param name="callBackAction">鍥炶皟鍑芥暟</param> - public void LoadDialog_EditParater(int titleId, string editParater, Action<string> callBackAction) + public void LoadDialog_EditParater(int titleId, string editParater, Action<string> callBackAction, int errorId_IsNullOrEmpty, int errorId_ContainsPar, List<string> baseList, bool encryption = false) { Dialog dialog = new Dialog() { @@ -62,121 +118,82 @@ X = Application.GetRealWidth(12), Width = Application.GetRealWidth(182), Text = editParater, - TextColor = CSS.CSS_Color.FirstLevelTitleColor, - TextSize = CSS.CSS_FontSize.TextFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + SecureTextEntry = encryption, + //TextAlignment = TextAlignment.CenterLeft , }; editView.AddChidren(etParater); + etParater.TextChangeEventHandler = (sender, e) => + { + if (etParater.Text.Length > 20) + { + etParater.Text = etParater.Text.Remove(20); + +#if __ANDROID__ + etParater.SetSelectionEnd(); +#endif + } + }; + Button btnLine = new Button() { - Y = Application.GetRealHeight(128), + Y = Application.GetRealHeight(129), Height = Application.GetRealHeight(1), - BackgroundColor = CSS.CSS_Color.DividingLineColor, + BackgroundColor = CSS_Color.DividingLineColor, }; contentView.AddChidren(btnLine); Button btnCancel = new Button() { Y = btnLine.Bottom, - Width = Application.GetRealWidth(134), + Width = Application.GetRealWidth(135), Height = Application.GetRealHeight(43), TextAlignment = TextAlignment.Center, TextColor = CSS_Color.TextualColor, TextSize = CSS_FontSize.SubheadingFontSize, - SelectedTextColor = CSS_Color.MainBackgroundColor, - SelectedBackgroundColor = CSS_Color.MainColor, + //SelectedTextColor = CSS_Color.MainBackgroundColor, + //SelectedBackgroundColor = CSS_Color.MainColor, TextID = StringId.Cancel, }; contentView.AddChidren(btnCancel); - Button btnBottomLine = new Button() - { - X = btnCancel.Right, - Y = btnLine.Bottom, - Height = Application.GetRealHeight(43), - Width = Application.GetRealWidth(1), - BackgroundColor = CSS_Color.DividingLineColor, - }; - contentView.AddChidren(btnBottomLine); + //Button btnBottomLine = new Button() + //{ + // X = btnCancel.Right, + // Y = btnLine.Bottom, + // Height = Application.GetRealHeight(43), + // Width = Application.GetRealWidth(1), + // BackgroundColor = CSS_Color.DividingLineColor, + //}; + //contentView.AddChidren(btnBottomLine); Button btnConfirm = new Button() { - X = btnBottomLine.Right, - Y = btnLine.Bottom, - Width = Application.GetRealWidth(135), - Height = Application.GetRealHeight(43), + X = btnCancel.Right, + Y = btnLine.Y, + Width = Application.GetRealWidth(137), + Height = Application.GetRealHeight(43 + 1), TextAlignment = TextAlignment.Center, - TextColor = CSS.CSS_Color.TextualColor, + //TextColor = CSS_Color.TextualColor, TextSize = CSS_FontSize.SubheadingFontSize, - SelectedTextColor = CSS_Color.MainBackgroundColor, - SelectedBackgroundColor = CSS_Color.MainColor, + TextColor = CSS_Color.MainBackgroundColor, + BackgroundColor = CSS_Color.MainColor, TextID = StringId.Confirm, }; contentView.AddChidren(btnConfirm); + int mRectCornerID = HDLUtils.RectCornerBottomRight; + btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID); dialog.Show(); - btnCancel.MouseDownEventHandler += (sender, e) => { - btnCancel.IsSelected = true; - }; - btnCancel.MouseUpEventHandler += (sender, e) => { - btnCancel.IsSelected = false; - dialog.Close(); - }; - btnConfirm.MouseDownEventHandler += (sender, e) => { - btnConfirm.IsSelected = true; - }; - btnConfirm.MouseUpEventHandler += (sender, e) => + btnCancel.MouseUpEventHandler += (sender, e) => { - btnConfirm.IsSelected = false; - //闇�瑕佹彁绀洪敊璇俊鎭湪绐楀彛寮圭獥涔嬩笂鐨� - if ((titleId == StringId.EditFloorName && etParater.Text.Trim() != editParater) || titleId == StringId.AddFloors) - { - var tipMsgString = titleId == StringId.EditFloorName ? Language.StringByID(StringId.AddFloorFailed_FloorAlreadyExist) : Language.StringByID(StringId.AddFloorFailed_FloorAlreadyExist); - - if (string.IsNullOrEmpty(etParater.Text.Trim())) - { - tipMsgString = Language.StringByID(StringId.FloorNameCannotBeEmpty); - return; - } - - if (DB_ResidenceData.residenceData.floors.Contains(etParater.Text.Trim())) - { - contentView.Height = Application.GetRealHeight(183); - btnLine.Y = Application.GetRealHeight(139); - btnBottomLine.Y = btnLine.Bottom; - btnCancel.Y = btnLine.Bottom; - btnConfirm.Y = btnLine.Bottom; - - - var btnTip = new Button() - { - X = editView.X, - Y = editView.Bottom, - Width = Application.GetRealWidth(182), - Height = Application.GetRealHeight(30), - Text = tipMsgString, - TextColor = CSS_Color.WarningColor, - TextSize = CSS_FontSize.TextFontSize, - }; - contentView.AddChidren(btnTip); - - return; - } - - callBackAction(etParater.Text.Trim()); - } - - if(titleId == StringId.RoomName || titleId == StringId.ChangeName || titleId == StringId.ResidenceName) - { - if(editParater != etParater.Text.Trim()) - { - callBackAction(etParater.Text.Trim()); - } - } dialog.Close(); }; - + EditParaterEvent(btnConfirm, errorId_IsNullOrEmpty, errorId_ContainsPar, baseList, etParater, callBackAction, + contentView, btnLine, btnCancel, editView, dialog, titleId); } /// <summary> @@ -185,7 +202,7 @@ /// <param name="titleId"></param> /// <param name="msgId"></param> /// <param name="callBackAction"></param> - public void TipMsg(int titleId, int msgId, Action callBackAction) + public void TipOptionMsg(int titleId, int msgId, Action callBackAction) { Dialog dialog = new Dialog() { @@ -226,6 +243,7 @@ TextColor = CSS_Color.TextualColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextID = msgId, + IsMoreLines = true, }; contentView.AddChidren(btnMsg); @@ -233,6 +251,7 @@ { Y = Application.GetRealHeight(96), Height = Application.GetRealHeight(1), + Width = Application.GetRealWidth(270 / 2), BackgroundColor = CSS.CSS_Color.DividingLineColor, }; contentView.AddChidren(btnLine); @@ -240,60 +259,52 @@ Button btnCancel = new Button() { Y = btnLine.Bottom, - Width = Application.GetRealWidth(134), - Height = Application.GetRealHeight(43), - TextAlignment = TextAlignment.Center, - TextColor = CSS_Color.TextualColor, - TextSize = CSS_FontSize.SubheadingFontSize, - SelectedTextColor = CSS_Color.MainBackgroundColor, - SelectedBackgroundColor = CSS_Color.MainColor, - TextID = StringId.Cancel, - }; - contentView.AddChidren(btnCancel); - - Button btnBottomLine = new Button() - { - X = btnCancel.Right, - Y = btnLine.Bottom, - Height = Application.GetRealHeight(43), - Width = Application.GetRealWidth(1), - BackgroundColor = CSS_Color.DividingLineColor, - }; - contentView.AddChidren(btnBottomLine); - - Button btnConfirm = new Button() - { - X = btnBottomLine.Right, - Y = btnLine.Bottom, Width = Application.GetRealWidth(135), Height = Application.GetRealHeight(43), TextAlignment = TextAlignment.Center, TextColor = CSS_Color.TextualColor, TextSize = CSS_FontSize.SubheadingFontSize, - SelectedTextColor = CSS_Color.MainBackgroundColor, - SelectedBackgroundColor = CSS_Color.MainColor, + //SelectedTextColor = CSS_Color.MainBackgroundColor, + //SelectedBackgroundColor = CSS_Color.MainColor, + TextID = StringId.Cancel, + }; + contentView.AddChidren(btnCancel); + + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Y, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(45), + TextAlignment = TextAlignment.Center, + //TextColor = CSS_Color.TextualColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.MainBackgroundColor, + BackgroundColor = CSS_Color.MainColor, TextID = StringId.Confirm, }; contentView.AddChidren(btnConfirm); - + //渚嬶細鍙充笅鍦嗚 澶у皬涓�50 + int mRectCornerID = HDLUtils.RectCornerBottomRight; + btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID); dialog.Show(); - btnCancel.MouseDownEventHandler += (sender, e) => - { - btnCancel.IsSelected = true; - }; + //btnCancel.MouseDownEventHandler += (sender, e) => + //{ + // btnCancel.IsSelected = true; + //}; btnCancel.MouseUpEventHandler += (sender, e) => { - btnCancel.IsSelected = false; + //btnCancel.IsSelected = false; dialog.Close(); }; - btnConfirm.MouseDownEventHandler += (sender, e) => - { - btnConfirm.IsSelected = true; - }; + //btnConfirm.MouseDownEventHandler += (sender, e) => + //{ + // btnConfirm.IsSelected = true; + //}; btnConfirm.MouseUpEventHandler += (sender, e) => { - btnConfirm.IsSelected = false; + //btnConfirm.IsSelected = false; callBackAction(); dialog.Close(); }; @@ -305,22 +316,33 @@ /// </summary> /// <param name="msg"></param> /// <param name="isWhite"></param> - public void TipMsgAutoClose(string msg,bool isWhite) + public void TipMsgAutoClose(string msg, bool isWhite, int closeTime = 1500) { - Dialog dialog = new Dialog() + Dialog dialog = new Dialog(); + + FrameLayout dialogBody = new FrameLayout(); + dialog.AddChidren(dialogBody); + dialogBody.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + dialog = null; + }; + + FrameLayout frame = new FrameLayout() { X = Application.GetRealWidth(89), Y = Application.GetRealHeight(285), Width = Application.GetRealWidth(198), Height = Application.GetRealHeight(98), - }; - - FrameLayout frame = new FrameLayout() - { BackgroundColor = isWhite ? 0xE6FFFFFF : CSS_Color.DialogTransparentColor1, Radius = (uint)Application.GetRealWidth(12), }; dialog.AddChidren(frame); + frame.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + dialog = null; + }; Button btnTipIcon = new Button() { @@ -345,13 +367,18 @@ dialog.Show(); - new Thread(() => { - Thread.Sleep(1500); + new Thread(() => + { + Thread.Sleep(closeTime); Application.RunOnMainThread(() => { - dialog.Close(); + if(dialog!=null) + { + dialog.Close(); + } }); - }) { IsBackground = true }.Start(); + }) + { IsBackground = true }.Start(); } /// <summary> @@ -359,7 +386,7 @@ /// </summary> /// <param name="titleId"></param> /// <param name="msgId"></param> - public void TipMsg(int titleId, int msgId) + public void TipMsg(int titleId, int msgId,Action action = null) { Dialog dialog = new Dialog() { @@ -400,6 +427,7 @@ TextColor = CSS_Color.TextualColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextID = msgId, + IsMoreLines = true, }; contentView.AddChidren(btnMsg); @@ -433,6 +461,7 @@ btnConfirm.MouseUpEventHandler += (sender, e) => { btnConfirm.IsSelected = false; + action?.Invoke(); dialog.Close(); }; @@ -458,6 +487,282 @@ thread.Start(); } + /// <summary> + /// 鍔犺浇鏄剧ず绛夊緟绐楀彛 + /// </summary> + /// <param name="msg"></param> + /// <returns>杩斿洖鍏抽棴绐楀彛Action</returns> + public Action TipLoadingMsgDialog(string msg) + { + Dialog dialog = new Dialog() + { + X = Application.GetRealWidth(89), + Y = Application.GetRealHeight(285), + Width = Application.GetRealWidth(198), + Height = Application.GetRealHeight(98), + }; + + FrameLayout frame = new FrameLayout() + { + BackgroundColor = CSS_Color.DialogTransparentColor1, + Radius = (uint)Application.GetRealWidth(12), + }; + dialog.AddChidren(frame); + + Button btnTipIcon = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(15), + Width = Application.GetRealWidth(32), + Height = Application.GetRealWidth(32), + UnSelectedImagePath = "Public/MsgIcon/LoadingIcon.png", + }; + frame.AddChidren(btnTipIcon); + + Button btnTipMsg = new Button() + { + Y = Application.GetRealHeight(47), + Height = Application.GetRealHeight(50), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.MainBackgroundColor, + Text = msg, + }; + frame.AddChidren(btnTipMsg); + + dialog.Show(); + return new Action(() => + { + dialog.Close(); + }); + } + + /// <summary> + /// 鍦烘櫙寤舵椂璁剧疆寮圭獥 + /// </summary> + /// <param name="function"></param> + public void SetSceneDelayDialog(Action<string> action,string changeDelay) + { + Button lastButton = new Button(); + Dialog dialog = new Dialog(); + var pView = new FrameLayout() + { + BackgroundColor = CSS_Color.DialogTransparentColor1, + }; + dialog.AddChidren(pView); + + var optionBaseView = new FrameLayout() + { + Y = Application.GetRealHeight(439), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(208), + 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() + { + Width = Application.GetRealWidth(320), + TextAlignment = TextAlignment.CenterRight, + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.TextFontSize, + TextID = StringId.Complete, + }; + topView.AddChidren(btnConfrim); + + Button btn1 = new Button() + { + Width = Application.GetRealWidth(128), + Height = Application.GetRealWidth(44), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + Text = "30s", + BorderColor = CSS_Color.PromptingColor1, + BorderWidth = 1, + Radius = (uint)Application.GetRealWidth(8), + SelectedTextColor = CSS_Color.MainBackgroundColor, + SelectedBackgroundColor = CSS_Color.MainColor, + X = Application.GetRealWidth(20), + Y = Application.GetRealHeight(80), + IsSelected = changeDelay == "30" + }; + optionBaseView.AddChidren(btn1); + + + Button btn2 = new Button() + { + Width = Application.GetRealWidth(128), + Height = Application.GetRealWidth(44), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + Text = "1min", + BorderColor = CSS_Color.PromptingColor1, + BorderWidth = 1, + Radius = (uint)Application.GetRealWidth(8), + SelectedTextColor = CSS_Color.MainBackgroundColor, + SelectedBackgroundColor = CSS_Color.MainColor, + X = Application.GetRealWidth(195), + Y = Application.GetRealHeight(80), + IsSelected = changeDelay == "60" + }; + optionBaseView.AddChidren(btn2); + + + Button btn3 = new Button() + { + Width = Application.GetRealWidth(128), + Height = Application.GetRealWidth(44), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + Text = "2min", + BorderColor = CSS_Color.PromptingColor1, + BorderWidth = 1, + Radius = (uint)Application.GetRealWidth(8), + SelectedTextColor = CSS_Color.MainBackgroundColor, + SelectedBackgroundColor = CSS_Color.MainColor, + X = Application.GetRealWidth(20), + Y = Application.GetRealHeight(140), + IsSelected = changeDelay == "120" + }; + optionBaseView.AddChidren(btn3); + + + Button btn4 = new Button() + { + Width = Application.GetRealWidth(128), + Height = Application.GetRealWidth(44), + TextAlignment = TextAlignment.Center, + TextSize = CSS_FontSize.SubheadingFontSize, + TextColor = CSS_Color.FirstLevelTitleColor, + Text = "5min", + BorderColor = CSS_Color.PromptingColor1, + BorderWidth = 1, + Radius = (uint)Application.GetRealWidth(8), + SelectedTextColor = CSS_Color.MainBackgroundColor, + SelectedBackgroundColor = CSS_Color.MainColor, + X = Application.GetRealWidth(195), + Y = Application.GetRealHeight(140), + IsSelected = changeDelay == "300" + }; + optionBaseView.AddChidren(btn4); + + + + + dialog.Show(); + + pView.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + + btnCancel.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + btnConfrim.MouseUpEventHandler = (sender, e) => + { + action(changeDelay); + dialog.Close(); + }; + btn1.MouseUpEventHandler = (sender, e) => { + btn1.IsSelected = !btn1.IsSelected; + btn2.IsSelected = false; + btn3.IsSelected = false; + btn4.IsSelected = false; + if(btn1.IsSelected) + { + changeDelay = "30"; + } + else + { + changeDelay = "0"; + } + }; + btn2.MouseUpEventHandler = (sender, e) => { + btn2.IsSelected = !btn2.IsSelected; + btn1.IsSelected = false; + btn3.IsSelected = false; + btn4.IsSelected = false; + if (btn2.IsSelected) + { + changeDelay = "60"; + } + else + { + changeDelay = "0"; + } + }; + btn3.MouseUpEventHandler = (sender, e) => { + btn3.IsSelected = !btn3.IsSelected; + btn2.IsSelected = false; + btn1.IsSelected = false; + btn4.IsSelected = false; + if (btn3.IsSelected) + { + changeDelay = "120"; + } + else + { + changeDelay = "0"; + } + }; + btn4.MouseUpEventHandler = (sender, e) => { + btn4.IsSelected = !btn4.IsSelected; + btn2.IsSelected = false; + btn3.IsSelected = false; + btn1.IsSelected = false; + if (btn4.IsSelected) + { + changeDelay = "300"; + } + else + { + changeDelay = "0"; + } + }; + + } } -} \ No newline at end of file +} -- Gitblit v1.8.0