から開始日と終了日を取得して、iPhone のカレンダーでイベントを作成するにはどうすればよいUITextField
ですか?
1886 次
2 に答える
1
イベントをプログラムで追加するには、Apple のEvent Kit Programming Guideを参照してください。を使用して自分で簡単にしたいかもしれませんがEKEventViewController
、すべてをコードで行うこともできます。
をテキスト フィールドNSString
のプロパティからに変換するには、 を使用する必要があります。クラスのドキュメントに良い例があります。text
NSDate
NSDateFormatter
于 2011-09-07T19:04:30.513 に答える
0
//create an EKEventEditViewController to display the event view controller.
EKEventEditViewController *addController = [[EKEventEditViewController alloc] initWithNibName:nil bundle:nil];
//set eventstore global reference
addController.eventStore = self.eventStore;
// present EventsAddViewController as a modal view controller
[self presentModalViewController:addController animated:YES];
// assign <EKEventEditViewDelegate> to view controller
addController.editViewDelegate = self;
[addController release];
//======================================================================
//Add delegate methods
- (void)eventEditViewController:(EKEventEditViewController *)controller
didCompleteWithAction:(EKEventEditViewAction)action {
NSError *error = nil;
EKEvent *thisEvent = controller.event;
switch (action) {
case EKEventEditViewActionCanceled:
// Edit action canceled, do nothing.
break;
case EKEventEditViewActionSaved:
// When user hit "Done" button, save the newly created event to the event store,
[controller.eventStore saveEvent:controller.event span:EKSpanThisEvent error:&error];
break;
case EKEventEditViewActionDeleted:
// When deleting an event, remove the event from the event store,
[controller.eventStore removeEvent:thisEvent span:EKSpanThisEvent error:&error];
break;
default:
break;
}
// Dismiss the modal view controller
[controller dismissModalViewControllerAnimated:YES];
}
// Set the calendar edited by EKEventEditViewController to our chosen calendar - the default calendar.
- (EKCalendar *)eventEditViewControllerDefaultCalendarForNewEvents:(EKEventEditViewController *)controller
{
EKCalendar *calendarForEdit = self.defaultCalendar;
return calendarForEdit;
}
于 2011-09-15T07:20:01.077 に答える