0

IOS 7 の日付形式に問題があります。次のコードを記述しました。

// eventstart = "12.NOV.2013 13:45" is a NSString
// eventend = "13.NOV.2013 14:12" is a NSString

NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd.MMM.yyyy HH:mm:ss"];
NSDateFormatter *dateFormat2 = [[NSDateFormatter alloc] init];
[dateFormat2 setDateFormat:@"dd.MMM.yyyy HH:mm:ss"];
[dateFormat setTimeZone:gmt];
[dateFormat2 setTimeZone:gmt];
NSDate *date = [dateFormat2 dateFromString:eventstart];
NSDate *date2 = [dateFormat dateFromString:eventend];

今、私はイベントを次のように設定しました:

    if ([eventStore respondsToSelector:@selector(requestAccessToEntityType:completion:)])

{[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {dispatch_async(dispatch_get_main_queue(), ^{

            if (error)

            { }

            else if (!granted)

            { }

            else

            {           
               event.startDate = date;
               event.endDate   = date2;
               event.calendar  = [eventStore defaultCalendarForNewEvents];
               NSString *title = [NSString stringWithFormat:@"%@",_type_s];
               event.title     = title;
               NSString *location = [NSString stringWithFormat:@"%@-%@",_from_s,_to_s];
               event.location  = location;
               NSString *notes = [NSString stringWithFormat:@"in GMT: \n %@ \n to \n             %@",_starttime_s,_endtime_s];
               event.notes     = notes;
              [event setCalendar:[eventStore defaultCalendarForNewEvents]];
              NSError *err;
              [eventStore saveEvent:event span:EKSpanThisEvent error:&err];
 }
});
}];

問題は、シミュレーターでは機能しますが、iPhone 自体では機能しないことです! デバッガーでは日付または日付2が常にnillであるため、日付形式に問題があると思います.....

誰かがその問題を手伝ってくれたり、問題を解決するためのヒントを教えてくれませんか!

宜しくお願いします ゲルト

4

1 に答える 1

0

これを日付形式として使用する必要があります。

[dateFormat2 setDateFormat:@"dd.LLL.yyyy HH:mm:ss"];

これで問題は解決するはずです。

于 2013-11-13T17:49:34.523 に答える