Пример #1
0
        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");
            }));
        }
Пример #2
0
        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");
                    }));
        }
Пример #3
0
        private DialogViewModel CreateViewModel(IDialogDelegate delegato, int sessionId)
        {
            var viewModel = TLContainer.Current.Resolve <DialogViewModel, IDialogDelegate>(delegato, sessionId);

            DataContext = viewModel;

            return(viewModel);
        }
Пример #4
0
 public void Show(string message, string positive, string negative, IDialogDelegate dialogDelegate)
 {
     Debug.LogError("DDDDialog doesn't support this platform: " + Application.platform);
 }
Пример #5
0
 public OnCancelListener(IDialogDelegate dialogDelegate)
     : base("android.content.DialogInterface$OnCancelListener")
 {
     this.dialogDelegate = dialogDelegate;
 }
Пример #6
0
 public OnClickListener(IDialogDelegate dialogDelegate, bool positive)
     : base("android.content.DialogInterface$OnClickListener")
 {
     this.dialogDelegate = dialogDelegate;
     this.positive       = positive;
 }
Пример #7
0
 public OnCancelListener(IDialogDelegate dialogDelegate)
     : base("android.content.DialogInterface$OnCancelListener")
 {
     this.dialogDelegate = dialogDelegate;
 }
Пример #8
0
 public OnClickListener(IDialogDelegate dialogDelegate, bool positive)
     : base("android.content.DialogInterface$OnClickListener")
 {
     this.dialogDelegate = dialogDelegate;
     this.positive = positive;
 }