using System;
using Android;
using Android.App;
using Android.Content;
using Android.Views;
namespace Shared
{
///
/// 对话框
///
/// 2019--18 修改
public class Alert
{
///
/// 当前信息框对象
///
AlertDialog.Builder builder;
AlertDialog mAlertDialog;
///
/// 对话窗
///
/// 标题
/// 信息
/// 取消按键备注,值null表示不显示取消按键
/// 确认按键备注
public Alert (string title, string message, string cancelButtonText, string okButtonText)
{
//builder = new AlertDialog.Builder(Application.Activity);
builder = new AlertDialog.Builder(new ContextThemeWrapper(Application.Activity, Resource.Style.ThemeDeviceDefaultLight));//改为浅色主题
builder.SetMessage (message);
builder.SetTitle (title);
builder.SetCancelable (false);
builder.SetPositiveButton (okButtonText, new EventHandler ((sender, e) => {
ResultEventHandler?.Invoke(this, true);
}));
if (cancelButtonText != null) {
builder.SetNegativeButton (cancelButtonText, new EventHandler ((sender, e) => {
ResultEventHandler?.Invoke(this, false);
}));
}
mAlertDialog = builder.Create();
}
///
/// 对话窗
///
/// 标题
/// 信息
/// 确认按键备注
public Alert (string title, string message, string okButtonText) : this (title, message, null, okButtonText) { }
///
/// 结果通知事件,true表示选中按键,false表示取消事件
///
public Action ResultEventHandler;
///
/// 显示当前的界面
///
public void Show()
{
if (mAlertDialog != null)
{
if (mAlertDialog.IsShowing)
{
mAlertDialog.Dismiss();
}
mAlertDialog.Show();
}
}
///
/// 关闭当前的界面
///
public void Dismiss()
{
if (mAlertDialog != null && mAlertDialog.IsShowing)
{
mAlertDialog.Dismiss();
}
}
}
}