using System;
|
using UIKit;
|
using CoreGraphics;
|
|
namespace Shared
|
{
|
/// <summary>
|
/// 对话框
|
/// </summary>
|
public class Alert
|
{
|
/// <summary>
|
/// 当前对话框
|
/// </summary>
|
UIAlertView myUIAlertView;
|
|
/// <summary>
|
/// 代理
|
/// </summary>
|
MyUIAlertViewDelegate myUIAlertViewDelegate = new MyUIAlertViewDelegate();
|
|
/// <summary>
|
/// 对话窗
|
/// </summary>
|
/// <param name="title">标题</param>
|
/// <param name="message">信息</param>
|
/// <param name="cancelButtonText">取消按键备注,值null表示不显示取消按键</param>
|
/// <param name="okButtonText">确认按键备注</param>
|
public Alert(string title,string message,string cancelButtonText,string okButtonText)
|
{
|
myUIAlertView = new UIAlertView ();
|
myUIAlertView.Title = title;
|
myUIAlertView.Message = message;
|
myUIAlertView.Delegate = myUIAlertViewDelegate;
|
if (cancelButtonText != null) {
|
myUIAlertView.AddButton (cancelButtonText);
|
myUIAlertViewDelegate.Flag = true;
|
}
|
myUIAlertView.AddButton (okButtonText);
|
|
myUIAlertViewDelegate.ResultEventHandler+= (sender, e) => {
|
if (ResultEventHandler != null) {
|
ResultEventHandler (sender, e);
|
}
|
};
|
|
}
|
|
/// <summary>
|
/// 对话窗
|
/// </summary>
|
/// <param name="title">标题</param>
|
/// <param name="message">信息</param>
|
/// <param name="okButtonText">确认按键备注</param>
|
public Alert(string title,string message,string okButtonText):this(title,message,null,okButtonText)
|
{
|
|
}
|
|
/// <summary>
|
/// 结果通知事件,true表示选中按键,false表示取消事件
|
/// </summary>
|
public event EventHandler<bool> ResultEventHandler;
|
|
/// <summary>
|
/// 显示当前的界面
|
/// </summary>
|
public void Show()
|
{
|
myUIAlertView.Show ();
|
}
|
|
/// <summary>
|
/// 对话框事件处理代理
|
/// </summary>
|
class MyUIAlertViewDelegate : UIAlertViewDelegate
|
{
|
/// <summary>
|
/// 通知结果
|
/// </summary>
|
public event EventHandler<bool> ResultEventHandler;
|
/// <summary>
|
/// 是否是有取消按键
|
/// </summary>
|
public bool Flag;
|
public override void Clicked(UIAlertView alertview, nint buttonIndex)
|
{
|
if (ResultEventHandler != null)
|
{
|
if (buttonIndex == 0)
|
{
|
if (Flag)
|
{
|
//取消按键
|
ResultEventHandler(alertview, false);
|
}
|
else {
|
//按了确定
|
ResultEventHandler(alertview, true);
|
}
|
}
|
else if (buttonIndex == 1)
|
{
|
//按了确定
|
ResultEventHandler(alertview, true);
|
}
|
}
|
}
|
}
|
}
|
}
|