0

今、私はiPhoneのカレンダーアプリケーションに取り組んでいます。iPhone のデフォルトのカレンダーにイベントを追加しようとしています。この場合、イベントの追加は正常に完了していますが、適切な開始時刻にイベントを追加できません。イベントの開始日は正確ですが、iPhoneのデフォルトのカレンダーでは時間が異なります.次のコードを使用しました.助けてください..

NSLog(@"開始ラベルは : %@",startLabel.text);// 2013-03-28 12:03:41 PM

NSLog(@"end label is : %@",endLabel.text);//2013-03-28 01:03:41 PM


     NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
     [dateFormat setDateFormat:@"yyyy-MM-dd hh:mm:ss a"];
     [dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
     NSLog(@"description is : %@",[dateFormat description]);


     NSDate *sDate=[dateFormat dateFromString:startLabel.text];      
     NSDate *eDate = [dateFormat dateFromString:endLabel.text];
     NSLog(@"startDate is : %@",sDate);//2013-03-28 12:03:41 +0000
     NSLog(@"endDate is : %@",eDate);// 2013-03-28 13:03:41 +0000
     self.eventStore = [[EKEventStore alloc] init];
     EKEvent *myevent = [EKEvent eventWithEventStore:self.eventStore];
     myevent.title = titleFld.text;
     myevent.location  = locFld.text;
     myevent.startDate = sDate;
     myevent.endDate =  eDate;
     [myevent setCalendar:[eventStore defaultCalendarForNewEvents]];
     NSError *err;
     [self.eventStore saveEvent:myevent span:EKSpanThisEvent error:&err];
4

1 に答える 1

3

使用する[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];

それ以外の

[dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];

これで問題が解決することを願っています。

于 2013-03-21T06:48:40.237 に答える