using System;
|
using Shared;
|
using HDL_ON;
|
using HDL_ON.UI.CSS;
|
|
namespace HDL_ON
|
{
|
public class HDLCommon
|
{
|
#region ■ 变量声明___________________________
|
/// <summary>
|
/// 通用方法
|
/// </summary>
|
private static HDLCommon m_Current = null;
|
/// <summary>
|
/// 通用方法
|
/// </summary>
|
public static HDLCommon Current
|
{
|
get
|
{
|
if (m_Current == null)
|
{
|
m_Current = new HDLCommon();
|
}
|
return m_Current;
|
}
|
}
|
#endregion
|
|
#region ■ Alter弹窗提示_______________________
|
/// <summary>
|
/// 弹窗提示
|
/// </summary>
|
/// <param name="mes"></param>
|
public void ShowAlert(string mes)
|
{
|
new Alert("", mes, Language.StringByID(StringId.Close)).Show();
|
}
|
|
/// <summary>
|
/// 弹窗提示
|
/// </summary>
|
/// <param name="mes">弹窗提示信息</param>
|
/// <param name="okAction">确认按钮事件</param>
|
public void ShowActionAlert(string mes, Action okAction)
|
{
|
Alert alert = new Alert("", mes, Language.StringByID(StringId.Cancel), Language.StringByID(StringId.Confirm));
|
alert.ResultEventHandler += (sender2, e2) => {
|
if (e2)
|
{
|
okAction?.Invoke();
|
}
|
};
|
alert.Show();
|
}
|
|
#endregion
|
|
#region ■ 通用Dialog_______________________
|
/// <summary>
|
/// 加载提示Dialog
|
/// </summary>
|
/// <param name="titleId"></param>
|
/// <param name="msgId"></param>
|
/// <param name="callBackAction"></param>
|
void ShowConfirmDialogBase(int titleId, int msgId, Action okAction, Action cancelAction, int cancelID = StringId.Cancel, int confirmID = StringId.Confirm)
|
{
|
Dialog dialog = new Dialog()
|
{
|
BackgroundColor = CSS_Color.DialogTransparentColor1,
|
};
|
|
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),
|
};
|
dialog.AddChidren(contentView);
|
|
Button btnTitle = new Button()
|
{
|
Y = Application.GetRealHeight(16),
|
Height = Application.GetRealHeight(30),
|
TextColor = CSS_Color.MainColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextAlignment = TextAlignment.Center,
|
IsBold = true,
|
TextID = titleId,
|
};
|
contentView.AddChidren(btnTitle);
|
|
Button btnMsg = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Height = Application.GetRealHeight(25),
|
Y = btnTitle.Bottom,
|
Width = Application.GetRealHeight(200),
|
TextAlignment = TextAlignment.Center,
|
TextColor = CSS_Color.TextualColor,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
TextID = msgId,
|
};
|
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 = Application.GetRealWidth(135),
|
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 = 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 = confirmID,
|
};
|
contentView.AddChidren(btnConfirm);
|
//例:右下圆角 大小为50
|
int mRectCornerID = HDLUtils.RectCornerBottomRight;
|
btnConfirm.SetCornerWithSameRadius((uint)Application.GetMinRealAverage(10), mRectCornerID);
|
dialog.Show();
|
btnCancel.MouseUpEventHandler += (sender, e) =>
|
{
|
dialog.Close();
|
cancelAction?.Invoke();
|
};
|
|
btnConfirm.MouseUpEventHandler += (sender, e) =>
|
{
|
dialog.Close();
|
okAction?.Invoke();
|
};
|
|
}
|
|
/// <summary>
|
/// 加载提示Dialog
|
/// </summary>
|
/// <param name="titleId"></param>
|
/// <param name="msgId"></param>
|
/// <param name="callBackAction"></param>
|
public void ShowConfirmDialog(int titleId, int msgId, Action okAction, Action cancelAction = null)
|
{
|
ShowConfirmDialogBase(titleId, msgId, okAction, cancelAction);
|
}
|
|
/// <summary>
|
/// 加载提示Dialog
|
/// 可以自定义按钮文字
|
/// </summary>
|
/// <param name="titleId"></param>
|
/// <param name="msgId"></param>
|
/// <param name="okAction"></param>
|
/// <param name="cancelAction"></param>
|
/// <param name="cancelID"></param>
|
/// <param name="confirmID"></param>
|
public void ShowConfirmDialog(int titleId, int msgId, Action okAction, Action cancelAction, int cancelID, int confirmID)
|
{
|
ShowConfirmDialogBase(titleId, msgId, okAction, cancelAction, cancelID, confirmID);
|
}
|
#endregion
|
|
|
}
|
}
|