DSLCalendarView重新加载

时间:2015-12-29 12:06:36

标签: ios iphone

我正在使用 httpConn.setConnectTimeout(TIMEOUT); //milliseconds httpConn.setReadTimeout(TIMEOUT); 来显示日程安排。更改月份后,将调用DSLCalendarView。我正在更新此事件的数据。但我希望日历能够在此次活动中重新加载。 是否可以刷新/重新加载didChangeToVisibleMonth

2 个答案:

答案 0 :(得分:1)

在DSLCalendarView.m中,您将为两个视图添加标记值。下面添加标签值代码。只需更改文件。

- (id)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self != nil) {
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(reloadCalendar:)
                                                 name:@"reloadCalendar"
                                               object:nil];

    [self commonInit];
}

return self;}

-(void)reloadCalendar{
    [self commonInit];
}

- (void)commonInit {
[[self viewWithTag:508] removeFromSuperview];
[[self viewWithTag:509] removeFromSuperview];
self.monthSelectorView.tag=508;
self.monthContainerView.tag=509;
}

- (void)didTapMonthBack:(id)sender {
NSDateComponents *newMonth = self.visibleMonth;
newMonth.month--;
[self commonInit];
[self setVisibleMonth:newMonth animated:YES]; } 

- (void)didTapMonthForward:(id)sender {
NSDateComponents *newMonth = self.visibleMonth;
newMonth.month++;
[self commonInit];
[self setVisibleMonth:newMonth animated:YES];}

如果我们在重新加载日历后点击日历中的前进或后退按钮。

在视图控制器中,如果我们在方法调用时更改事件调用,则只是一个通知调用方法。

- (void)calendarView:(DSLCalendarView *)calendarView didChangeToVisibleMonth:(NSDateComponents *)month {

[[NSNotificationCenter defaultCenter]postNotificationName:@"reloadCalendar" object:self];
NSLog(@"Now showing %@", month);

}

答案 1 :(得分:0)

我看到图书馆没有任何诀窍可以做到这一点,遗憾的是没有重装方法:(。可能是一些解决问题的工作。