From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI0-Public/PublicAssmebly.cs | 447 +++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 396 insertions(+), 51 deletions(-)
diff --git a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs
index 7d49bd1..e81f6c7 100644
--- a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs
+++ b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs
@@ -1,5 +1,6 @@
锘縰sing System;
using System.Collections.Generic;
+using System.Text.RegularExpressions;
using System.Threading;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
@@ -11,7 +12,7 @@
{
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)
+ FrameLayout contentView, Button btnLine, Button btnCancel, FrameLayout editView, Dialog dialog, int titleId)
{
var btnTip = new Button()
@@ -28,15 +29,22 @@
btnConfirm.MouseUpEventHandler += (sender, e) =>
{
- //btnConfirm.IsSelected = false;
- if (string.IsNullOrEmpty(editText.Text.Trim()) || list.Contains(editText.Text.Trim()))
+ var text = editText.Text.Trim();
+ Regex regtest = new Regex(@"\p{Cs}");
+ Match match = regtest.Match(text);
+ if (match.Success)
{
- if(titleId == StringId.ModifyMemberNickname)
- {
- return;
- }
+ HDLCommon.Current.ShowAlert(Language.StringByID(StringId.CannotEnterSpecialCharacters));
+ return;
+ }
+ if (string.IsNullOrEmpty(text) || list.Contains(text))
+ {
+ //if (titleId == StringId.ModifyMemberNickname)
+ //{
+ // return;
+ //}
string tipMsgString = "";
- if (string.IsNullOrEmpty(editText.Text.Trim()))
+ if (string.IsNullOrEmpty(text))
{
tipMsgString = Language.StringByID(errorId_IsNullOrEmpty);
}
@@ -58,7 +66,7 @@
}
- callBackAction(editText.Text.Trim());
+ callBackAction(text);
dialog.Close();
};
}
@@ -69,7 +77,7 @@
/// 淇濆瓨鎸夐挳浜嬩欢闇�瑕佸皢
/// </summary>
/// <param name="callBackAction">鍥炶皟鍑芥暟</param>
- public void LoadDialog_EditParater(int titleId, string editParater, Action<string> callBackAction, int errorId_IsNullOrEmpty, int errorId_ContainsPar, List<string> baseList,bool encryption = false)
+ 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()
{
@@ -120,15 +128,39 @@
Text = editParater,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
- SecureTextEntry = encryption,
+ //SecureTextEntry = encryption,
//TextAlignment = TextAlignment.CenterLeft ,
};
editView.AddChidren(etParater);
+ if(encryption)
+ {
+ etParater.SecureTextEntry = encryption;
+ }
- etParater.TextChangeEventHandler = (sender, e) => {
- if(etParater.Text.Length > 20)
+ Button btnClear = new Button()
+ {
+ X = Application.GetRealWidth(218-25),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetRealWidth(24),
+ Height = Application.GetRealWidth(24),
+ UnSelectedImagePath = "Public/ClearIcon.png",
+ };
+ editView.AddChidren(btnClear);
+
+ btnClear.MouseUpEventHandler = (sender, e) =>
+ {
+ etParater.Text = "";
+ };
+
+ etParater.TextChangeEventHandler = (sender, e) =>
+ {
+ if (etParater.Text.Length > 20)
{
etParater.Text = etParater.Text.Remove(20);
+
+#if __ANDROID__
+ etParater.SetSelectionEnd();
+#endif
}
};
@@ -168,11 +200,11 @@
{
X = btnCancel.Right,
Y = btnLine.Y,
- Width = Application.GetRealWidth(135),
- Height = Application.GetRealHeight(43+1),
+ Width = Application.GetRealWidth(137),
+ Height = Application.GetRealHeight(43 + 1),
TextAlignment = TextAlignment.Center,
//TextColor = CSS_Color.TextualColor,
- //TextSize = CSS_FontSize.SubheadingFontSize,
+ TextSize = CSS_FontSize.SubheadingFontSize,
TextColor = CSS_Color.MainBackgroundColor,
BackgroundColor = CSS_Color.MainColor,
TextID = StringId.Confirm,
@@ -183,18 +215,12 @@
dialog.Show();
- //btnCancel.MouseDownEventHandler += (sender, e) => {
- // btnCancel.IsSelected = true;
- //};
- btnCancel.MouseUpEventHandler += (sender, e) => {
- //btnCancel.IsSelected = false;
+ btnCancel.MouseUpEventHandler += (sender, e) =>
+ {
dialog.Close();
};
- //btnConfirm.MouseDownEventHandler += (sender, e) => {
- // btnConfirm.IsSelected = true;
- //};
EditParaterEvent(btnConfirm, errorId_IsNullOrEmpty, errorId_ContainsPar, baseList, etParater, callBackAction,
- contentView, btnLine, btnCancel, editView, dialog,titleId);
+ contentView, btnLine, btnCancel, editView, dialog, titleId);
}
/// <summary>
@@ -203,7 +229,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()
{
@@ -244,6 +270,7 @@
TextColor = CSS_Color.TextualColor,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextID = msgId,
+ IsMoreLines = true,
};
contentView.AddChidren(btnMsg);
@@ -251,7 +278,7 @@
{
Y = Application.GetRealHeight(96),
Height = Application.GetRealHeight(1),
- Width = Application.GetRealWidth(270/2),
+ Width = Application.GetRealWidth(270 / 2),
BackgroundColor = CSS.CSS_Color.DividingLineColor,
};
contentView.AddChidren(btnLine);
@@ -270,22 +297,12 @@
};
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 = btnCancel.Right,
Y = btnLine.Y,
Width = Application.GetRealWidth(135),
- Height = Application.GetRealHeight(43+1),
+ Height = Application.GetRealHeight(45),
TextAlignment = TextAlignment.Center,
//TextColor = CSS_Color.TextualColor,
TextSize = CSS_FontSize.SubheadingFontSize,
@@ -295,7 +312,7 @@
};
contentView.AddChidren(btnConfirm);
//渚嬶細鍙充笅鍦嗚 澶у皬涓�50
- int mRectCornerID = HDLUtils.RectCornerBottomRight;
+ int mRectCornerID = HDLUtils.RectCornerBottomRight;
btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID);
dialog.Show();
@@ -326,22 +343,33 @@
/// </summary>
/// <param name="msg"></param>
/// <param name="isWhite"></param>
- public void TipMsgAutoClose(string msg,bool isWhite,int closeTime = 1500)
+ 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()
{
@@ -361,18 +389,24 @@
TextSize = CSS_FontSize.TextFontSize,
TextColor = isWhite ? CSS_Color.FirstLevelTitleColor : CSS_Color.MainBackgroundColor,
Text = msg,
+ IsMoreLines = true,
};
frame.AddChidren(btnTipMsg);
dialog.Show();
- new Thread(() => {
+ new Thread(() =>
+ {
Thread.Sleep(closeTime);
Application.RunOnMainThread(() =>
{
- dialog.Close();
+ if(dialog!=null)
+ {
+ dialog.Close();
+ }
});
- }) { IsBackground = true }.Start();
+ })
+ { IsBackground = true }.Start();
}
/// <summary>
@@ -380,7 +414,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()
{
@@ -421,6 +455,7 @@
TextColor = CSS_Color.TextualColor,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextID = msgId,
+ IsMoreLines = true,
};
contentView.AddChidren(btnMsg);
@@ -454,6 +489,7 @@
btnConfirm.MouseUpEventHandler += (sender, e) =>
{
btnConfirm.IsSelected = false;
+ action?.Invoke();
dialog.Close();
};
@@ -523,10 +559,319 @@
frame.AddChidren(btnTipMsg);
dialog.Show();
- return new Action(() => {
+ return new Action(() =>
+ {
dialog.Close();
});
}
+ /// <summary>
+ /// 鍦烘櫙寤舵椂璁剧疆寮圭獥
+ /// </summary>
+ /// <param name="function"></param>
+ public void SetSceneDelayDialog(Dictionary<string,string>items, Action<string> action,string curItemKey)
+ {
+ 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()
+ //{
+ // 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 = curItemKey == "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 = curItemKey == "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 = curItemKey == "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 = curItemKey == "300"
+ //};
+ //optionBaseView.AddChidren(btn4);
+
+
+
+
+ dialog.Show();
+
+ pView.MouseUpEventHandler = (sender, e) =>
+ {
+ 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;
+ // btn3.IsSelected = false;
+ // btn4.IsSelected = false;
+ // if(btn1.IsSelected)
+ // {
+ // curItemKey = "30";
+ // }
+ // else
+ // {
+ // curItemKey = "0";
+ // }
+ //};
+ //btn2.MouseUpEventHandler = (sender, e) => {
+ // btn2.IsSelected = !btn2.IsSelected;
+ // btn1.IsSelected = false;
+ // btn3.IsSelected = false;
+ // btn4.IsSelected = false;
+ // if (btn2.IsSelected)
+ // {
+ // curItemKey = "60";
+ // }
+ // else
+ // {
+ // curItemKey = "0";
+ // }
+ //};
+ //btn3.MouseUpEventHandler = (sender, e) => {
+ // btn3.IsSelected = !btn3.IsSelected;
+ // btn2.IsSelected = false;
+ // btn1.IsSelected = false;
+ // btn4.IsSelected = false;
+ // if (btn3.IsSelected)
+ // {
+ // curItemKey = "120";
+ // }
+ // else
+ // {
+ // curItemKey = "0";
+ // }
+ //};
+ //btn4.MouseUpEventHandler = (sender, e) => {
+ // btn4.IsSelected = !btn4.IsSelected;
+ // btn2.IsSelected = false;
+ // btn3.IsSelected = false;
+ // btn1.IsSelected = false;
+ // if (btn4.IsSelected)
+ // {
+ // curItemKey = "300";
+ // }
+ // else
+ // {
+ // curItemKey = "0";
+ // }
+ //};
+
+ }
+
}
-}
\ No newline at end of file
+}
--
Gitblit v1.8.0