public static AndroidJavaObject CreateDatePickerDialog(int year, int month, int day,
                                                               OnDatePicked onDatePicked, Action onCancel, AGDialogTheme theme = AGDialogTheme.Default)
        {
            var listener      = new OnDateSetListenerPoxy(onDatePicked);
            int themeResource = AndroidDialogUtils.GetDialogTheme(theme);

            //  Month! (0-11 for compatibility with MONTH)
            var dialog = AndroidDialogUtils.IsDefault(themeResource)
                                ? new AndroidJavaObject(DatePickerClass, AGUtils.Activity, listener, year, month - 1, day)
                                : new AndroidJavaObject(DatePickerClass, AGUtils.Activity, themeResource, listener, year, month - 1, day);

            dialog.Call("setOnCancelListener", new DialogOnCancelListenerPoxy(onCancel));
            return(dialog);
        }
Example #2
0
        /// <summary>
        /// Shows the default Android date picker.
        /// </summary>
        /// <param name="year">Year.</param>
        /// <param name="month">Month.</param>
        /// <param name="day">Day.</param>
        /// <param name="onDatePicked">Date was picked callback.</param>
        /// <param name="onCancel">Dialog was cancelled callback.</param>
        /// <param name="theme">Dialog theme</param>
        public static void ShowDatePicker(int year, int month, int day, OnDatePicked onDatePicked, Action onCancel, AGDialogTheme theme = AGDialogTheme.Default)
        {
            if (AGUtils.IsNotAndroidCheck())
            {
                return;
            }

            AGUtils.RunOnUiThread(() =>
            {
                var listener      = new OnDateSetListenerPoxy(onDatePicked);
                int themeResource = AndroidDialogUtils.GetDialogTheme(theme);

                //  Month! (0-11 for compatibility with MONTH)
                var dialog = AndroidDialogUtils.IsDefault(themeResource)
                                        ? new AndroidJavaObject(DatePickerClass, AGUtils.Activity, listener, year, month - 1, day)
                                        : new AndroidJavaObject(DatePickerClass, AGUtils.Activity, themeResource, listener, year, month - 1, day);

                dialog.Call("setOnCancelListener", new DialogOnCancelListenerPoxy(onCancel));
                AndroidDialogUtils.ShowWithImmersiveModeWorkaround(dialog);
            });
        }