public void Show(string message, string positive, string negative, IDialogDelegate dialogDelegate) { var unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var activity = unity.GetStatic <AndroidJavaObject>("currentActivity"); activity.Call("runOnUiThread", new AndroidJavaRunnable(() => { var builder = new AndroidJavaObject("android.app.AlertDialog$Builder", activity); builder.Call <AndroidJavaObject>("setMessage", message); builder.Call <AndroidJavaObject>("setPositiveButton", positive, new OnClickListener(dialogDelegate, true)); var cancelable = !string.IsNullOrEmpty(negative); builder.Call <AndroidJavaObject>("setCancelable", cancelable); if (cancelable) { builder.Call <AndroidJavaObject>("setNegativeButton", negative, new OnClickListener(dialogDelegate, false)); } builder.Call <AndroidJavaObject>("setOnCancelListener", new OnCancelListener(dialogDelegate)); var dialog = builder.Call <AndroidJavaObject>("create"); dialog.Call("show"); })); }
public void Show(string message, string positive, string negative, IDialogDelegate dialogDelegate) { var unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var activity = unity.GetStatic<AndroidJavaObject>("currentActivity"); activity.Call("runOnUiThread", new AndroidJavaRunnable(() => { var builder = new AndroidJavaObject("android.app.AlertDialog$Builder", activity); builder.Call<AndroidJavaObject>("setMessage", message); builder.Call<AndroidJavaObject>("setPositiveButton", positive, new OnClickListener(dialogDelegate, true)); var cancelable = !string.IsNullOrEmpty(negative); builder.Call<AndroidJavaObject>("setCancelable", cancelable); if (cancelable) { builder.Call<AndroidJavaObject>("setNegativeButton", negative, new OnClickListener(dialogDelegate, false)); } builder.Call<AndroidJavaObject>("setOnCancelListener", new OnCancelListener(dialogDelegate)); var dialog = builder.Call<AndroidJavaObject>("create"); dialog.Call("show"); })); }
private DialogViewModel CreateViewModel(IDialogDelegate delegato, int sessionId) { var viewModel = TLContainer.Current.Resolve <DialogViewModel, IDialogDelegate>(delegato, sessionId); DataContext = viewModel; return(viewModel); }
public void Show(string message, string positive, string negative, IDialogDelegate dialogDelegate) { Debug.LogError("DDDDialog doesn't support this platform: " + Application.platform); }
public OnCancelListener(IDialogDelegate dialogDelegate) : base("android.content.DialogInterface$OnCancelListener") { this.dialogDelegate = dialogDelegate; }
public OnClickListener(IDialogDelegate dialogDelegate, bool positive) : base("android.content.DialogInterface$OnClickListener") { this.dialogDelegate = dialogDelegate; this.positive = positive; }