void ResetCalendarView()
        {
            this.View.LayoutIfNeeded();

            _calendar             = new Calendar();
            _calendar.CurrentDate = (NSDate)DateTime.Now;

            var menuView = new CalendarMenuView {
                Frame = new CGRect(0, 0, viewDate.Frame.Size.Width, viewDate.Frame.Size.Height)
            };
            var contentView = new CalendarContentView {
                Frame = new CGRect(0, 0, viewCalendar.Frame.Size.Width, viewCalendar.Frame.Size.Height)
            };

            var appearance = _calendar.CalendarAppearance;

            appearance.GetNSCalendar().FirstWeekDay = (nuint)2;
            appearance.DayDotColor            = appearance.DayCircleColorSelected = GROUP_COLOR;
            appearance.DayTextColorOtherMonth = appearance.DayDotColorOtherMonth = UIColor.Gray;
            appearance.DayTextColor           = appearance.MenuMonthTextColor = UIColor.White;
            appearance.DayCircleColorToday    = UIColor.Red;
            appearance.DayCircleRatio         = (9f / 10f);
            appearance.WeekDayFormat          = CalendarWeekDayFormat.Single;

            appearance.SetMonthLabelTextCallback((NSDate date, Calendar cal) => new NSString(((DateTime)date).ToString("MMMM yyyy")));

            //Link the views to the calendar
            _calendar.MenuMonthsView = menuView;
            _calendar.ContentView    = contentView;

            _calendar.DateSelected       += DateSelected;
            _calendar.NextPageLoaded     += DidLoadNextPage;
            _calendar.PreviousPageLoaded += DidLoadPreviousPage;

            foreach (var view in viewDate.Subviews)
            {
                view.RemoveFromSuperview();
            }

            foreach (var view in viewCalendar.Subviews)
            {
                view.RemoveFromSuperview();
            }

            viewDate.Add(menuView);
            viewCalendar.Add(contentView);

            ReloadEvents();
        }
示例#2
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            // Perform any additional setup after loading the view, typically from a nib.
//Create required objects
            var calendar = new Calendar();
            var menuView = new CalendarMenuView
            {
                Frame = new CGRect(0f, 0f, 320f, 40f)
            };
            var contentView = new CalendarContentView
            {
                Frame = new CGRect(0f, 45f, 320f, 280f)
            };

//Customize calendar's appearance
            var appearance = calendar.CalendarAppearance;

            appearance.GetNSCalendar().FirstWeekDay = (nuint)3;
            appearance.DayCircleColorSelected = UIColor.rgba(52, 152, 219, 1.0);
            appearance.DayCircleRatio         = (9f / 10f);
            appearance.WeekDayFormat          = CalendarWeekDayFormat.Single;

            //Link the views to the calendar
            calendar.MenuMonthsView = menuView;
            calendar.ContentView    = contentView;

            calendar.DateSelected       += DateSelected;
            calendar.NextPageLoaded     += DidLoadNextPage;
            calendar.PreviousPageLoaded += DidLoadPreviousPage;

            // Pass a function that returns text to display in month label
            //E.g. "JAN 2014" OR “01/2014"
            appearance.SetMonthLabelTextCallback(
                //Full month-name and year. E.g. DECEMBER 2014
                (NSDate date, Calendar cal) => new NSString(
                    ((DateTime)date).ToString("MMMM yyyy")));

            //Add the views to the current view
            View.Add(menuView);
            View.Add(contentView);
        }
示例#3
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            //Create required objects
            _calendar = new Calendar();
            //var menuView = new CalendarMenuView
            //{ Frame = new CGRect(0f, 0f, vwCalendar.Frame.Width, 0) };
            var contentView = new CalendarContentView {
                Frame = new CGRect(0f, 0f, vwCalendar.Frame.Width, vwCalendar.Frame.Height)
            };

            //Customize calendar's appearance
            var appearance = _calendar.CalendarAppearance;

            appearance.GetNSCalendar().FirstWeekDay = 2;
            appearance.DayCircleRatio                   = 9f / 10f;
            appearance.DayCircleColorToday              = UIColor.FromRGB(255, 128, 0);
            appearance.DayCircleColorSelected           = UIColor.FromRGB(40, 174, 219);
            appearance.DayCircleColorSelectedOtherMonth = UIColor.FromRGB(200, 200, 200);
            appearance.DayTextColorOtherMonth           = UIColor.FromRGB(200, 200, 200);
            appearance.SetMonthLabelTextCallback((date, cal) => new NSString(((DateTime)date).ToString("MMMM")));

            _calendar.ContentView = contentView;

            //Add the views to the current view
            //vwCalendar.Add(menuView);
            vwCalendar.Add(contentView);

            UpdateMonthTitle();
            InitStyle();

            var bindingSet = this.CreateBindingSet <DatePickerView, DatePickerViewModel>();

            bindingSet.Bind(btnContinue).To(vm => vm.ContinueCommand);
            bindingSet.Apply();
        }
示例#4
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            View.BackgroundColor = UIColor.FromRGBA(66, 86, 110, 255);
            NavigationController.NavigationBarHidden = true;

            //Create required objects
            var menuView = new CalendarMenuView {
                Frame = new CGRect(0f, 20f, 320f, 60f)
            };
            var contentView = new CalendarContentView {
                Frame = new CGRect(0f, 85f, 320f, 270f)
            };
            var eventView = new CalendarEventView {
                Frame = new CGRect(0f, 400f, 320f, 170f)
            };

            //Remember to specify the DateTimeKind for event date
            var fSharpMeetDate =
                new DateTime(2015, 1, 1, 11, 30, 00, DateTimeKind.Local);
            var weddingDate = fSharpMeetDate.AddDays(5);

            //Add events
            _calendar.EventSchedule = new EventDetails[] {
                new EventDetails(
                    startDate: (NSDate)DateTime.Now,
                    endDate: NSDate.Now.AddSeconds(3000),
                    title: "Writing documentation"),
                new EventDetails(
                    (NSDate)fSharpMeetDate,
                    (NSDate)fSharpMeetDate.AddHours(1.5),
                    "F# Group Meeting"),
                new EventDetails(
                    (NSDate)weddingDate,
                    (NSDate)weddingDate.AddHours(2),
                    "Peter and Denise's Wedding"),
            };

            //Customize calendar appearance
            var appearance = _calendar.CalendarAppearance;

            appearance.GetNSCalendar().FirstWeekDay = (nuint)2;
            appearance.DayCircleColorSelected = UIColor.FromRGB(154, 188, 227);
            appearance.DayTextColorOtherMonth = appearance.DayDotColorOtherMonth = UIColor.FromRGB(157, 177, 199);
            appearance.DayDotColor            = appearance.DayTextColor = appearance.MenuMonthTextColor = UIColor.White;
            appearance.DayCircleColorToday    = UIColor.LightTextColor;
            appearance.DayCircleRatio         = (9f / 10f);
            appearance.WeekDayFormat          = CalendarWeekDayFormat.Short;

            // Pass a function that returns text to display in the month label. E.g. "JAN 2014" OR “01/2014"
            appearance.SetMonthLabelTextCallback(
                //Returns full month-name and year. E.g. DECEMBER 2014
                (NSDate date, Calendar cal) => new NSString(((DateTime)date).ToString("MMMM\nyyyy")));

            //Link the views to the calendar
            _calendar.MenuMonthsView = menuView;
            _calendar.ContentView    = contentView;
            _calendar.EventView      = eventView;

            _calendar.DateSelected       += DateSelected;
            _calendar.NextPageLoaded     += DidLoadNextPage;
            _calendar.PreviousPageLoaded += DidLoadPreviousPage;

            //Add calendar views to the main view
            View.Add(menuView);
            View.Add(contentView);
            View.Add(eventView);
        }