【问题标题】:How to show Single date in multiple events reload in MBCalendarKit如何在 MBCalendarKit 中重新加载多个事件中显示单个日期
【发布时间】:2016-12-21 05:29:27
【问题描述】:

我在我的项目中使用日历视图。我正在使用MBCalendarKit。那个时候在单场演出中单次约会。但我想在多个活动节目中单独约会。但是怎么可能,请帮忙。

- (void) viewWillAppear: (BOOL)animated{

  NSArray *title = [_caldevice valueForKey:@"pill"];
 // NSLog(@"event name fetch %@",title);

NSArray *date =[_caldevice valueForKey:@"datetaken"];
 // NSLog(@"event fetch %@",date);

NSArray*dose= [_caldevice valueForKey:@"dose"];


NSString *title1;
NSString*title2;
NSDate *date1;
NSData *imgdata;
CKCalendarEvent *releaseUpdatedCalendarKit;
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
  dateFormatter.dateFormat = @"dd-MM-yyyy";


for (int i = 0; i < [date count]; i++){
    title1 = NSLocalizedString(title[i], @"");
    title2 = NSLocalizedString(dose[i], @"");
    NSString *combined = [NSString stringWithFormat:@"%@ - %@", title1, title2];

    date1 = [dateFormatter dateFromString:date[i]];


    releaseUpdatedCalendarKit = [CKCalendarEvent eventWithTitle:combined andDate:date1 andInfo:Nil];

   // NSLog(@"Event: %@ , %@",combined,date1);
   // releaseUpdatedCalendarKit = [CKCalendarEvent eventWithTitle:combined andDate:date1 andInfo:Nil andColor:[UIColor blueColor]];


    self.data[date1] = @[releaseUpdatedCalendarKit];
}


}

【问题讨论】:

  • 创建问题并在lib的github中提问,创建者可能会帮助你
  • @Tj3n 我问了,但创作者没有重播
  • 嘿@ankurkumawat,我是MBCalendarKit 的开发者。你介意把这个问题链接到这里,我看看能不能帮忙?

标签: ios objective-c iphone calendar mbcalendarkit


【解决方案1】:

您正在循环一堆事件,并且对于每个事件,您*将先前分配的数组替换为包含单个元素的新数组。

替换这个:

self.data[date1] = @[releaseUpdatedCalendarKit];

类似这样的东西:

// 1. First, get the previous events for that day.
NSMutableArray <CKCalendarEvent *> *events = self.data[date1].mutableCopy;

// 2. If events exist, append the event, otherwise create an empty array with the new event.
if (events) {
  [events addObject: newEvent];
}
else  {
   events = @[newEvent];
}

// 3. Set the events for the date key.
self.data[date1] = events;

这样你是在做一个“添加或创建”操作,而不是每次都覆盖。

披露:我编写并维护 MBCalendarKit。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 2020-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多