我知道這是舊的,但我根據我在這裏和那裏找到的答案開發了一個簡單的幫助程序,所以我將這裏放在希望它可以幫助某人。享受..
using System;
using Android.App;
using Android.Content;
namespace MyApp.Helpers
{
#region Enums
public enum MessageBoxResult
{
None = 0,
OK,
Cancel,
Yes,
No
}
public enum MessageBoxButton
{
OK = 0,
OKCancel,
YesNo,
YesNoCancel
}
public enum MessageBoxButtonText
{
Ok,
Cancel,
Yes,
No
}
#endregion
public static class MessageBoxHelper
{
public static void Show(Context context, Action<bool> callback, string messageBoxText, string caption, MessageBoxButton buttonType)
{
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
alertBuilder.SetTitle(caption);
//builder.SetIcon(Android.Resource.Drawable.IcDialogAlert);
alertBuilder.SetMessage(messageBoxText);
switch (buttonType)
{
case MessageBoxButton.OK:
alertBuilder.SetPositiveButton(MessageBoxButtonText.Ok.ToString(), (sender, e) => callback(true));
break;
case MessageBoxButton.OKCancel:
alertBuilder.SetPositiveButton(MessageBoxButtonText.Ok.ToString(), (sender, e) => callback(true));
alertBuilder.SetNegativeButton(MessageBoxButtonText.Cancel.ToString(), (sender, e) => callback(false));
break;
case MessageBoxButton.YesNo:
alertBuilder.SetPositiveButton(MessageBoxButtonText.Yes.ToString(), (sender, e) => callback(true));
alertBuilder.SetNegativeButton(MessageBoxButtonText.No.ToString(), (sender, e) => callback(false));
break;
}
alertBuilder.Show();
}
public static void Show(Context context, string messageBoxText)
{
Show(context, delegate(bool b) { }, messageBoxText, "", MessageBoxButton.OK);
}
public static void Show(Context context, string messageBoxText, string caption)
{
Show(context, delegate(bool b) { }, messageBoxText, caption, MessageBoxButton.OK);
}
}
}
檢查:http://stackoverflow.com/questions/4381296/android-wait-on-user-input-from-dialog – Ponmalar
我不能用它 – mcxxx
我無法理解你的答案...你看不到鏈接或其他任何東西? – Ponmalar