public FluentInitializer WithSelectedDates(ICollection<DateTime> selectedDates)
        {
            if (_calendar.Mode == CalendarPickerView.SelectionMode.Single && _calendar.SelectedDates.Count > 1) {
                throw new IllegalArgumentException("SINGLE mode can't be used with multiple selectedDates");
            }
            if (_calendar.SelectedDates != null) {
                foreach (var date in selectedDates) {
                    _calendar.SelectDate(date);
                }
            }
            int selectedIndex = -1;
            int todayIndex = -1;
            for (int i = 0; i < _calendar.Months.Count; i++) {
                var month = _calendar.Months[i];
                if (selectedIndex == -1) {
                    if (_calendar.SelectedCals.Any(
                        selectedCal => CalendarPickerView.IsSameMonth(selectedCal, month))) {
                        selectedIndex = i;
                    }
                    if (selectedIndex == -1 && todayIndex == -1 &&
                        CalendarPickerView.IsSameMonth(DateTime.Now, month)) {
                        todayIndex = i;
                    }
                }
            }
            if (selectedIndex != -1) {
                _calendar.ScrollToSelectedMonth(selectedIndex);
            }
            else if (todayIndex != -1) {
                _calendar.ScrollToSelectedMonth(todayIndex);
            }

            _calendar.ValidateAndUpdate();
            return this;
        }
Esempio n. 2
0
 public FluentInitializer(CalendarPickerView calendar)
 {
     _calendar = calendar;
 }
Esempio n. 3
0
 public MonthAdapter(Context context, CalendarPickerView calendar)
 {
     _calendar = calendar;
     _inflater = LayoutInflater.From(context);
 }
 public FluentInitializer InMode(CalendarPickerView.SelectionMode mode)
 {
     _calendar.Mode = mode;
     _calendar.ValidateAndUpdate();
     return this;
 }
 public FluentInitializer(CalendarPickerView calendar)
 {
     _calendar = calendar;
 }