2011-09-07 2 views
0

UITextField에서 시작 및 종료 날짜를 가져 오는 iPhone 캘린더로 일정을 만들려면 어떻게해야합니까?텍스트 필드의 날짜를 기준으로 이벤트 만들기

+0

'UITextField'를 의미합니까? 그 문안은 어떻게 'UILabel'에 들어갔습니까? – Mundi

+0

죄송합니다. UITextField! – pixelbitlabs

+0

[UITextField에서 캘린더에 새 이벤트 만들기?] (http://stackoverflow.com/questions/7322184/create-new-event-in-calendar-from-uitextfield) –

답변

1

프로그래밍 방식으로 이벤트를 추가하려면 Apple Event Kit Programming Guide을 읽어보십시오. EKEventViewController을 사용하여 스스로를 더 쉽게 만들고 싶을 수도 있지만 코드의 모든 작업을 수행 할 수도 있습니다.

텍스트 필드의 text 속성에서 NSStringNSDate으로 변환하려면 NSDateFormatter을 사용해야합니다. class documentation에는 좋은 예가 있습니다.

+0

가능한 복제본을 일부 샘플 코드로 제공 할 수 있습니까? 좀 잃어버린거야? : | 감사! – pixelbitlabs

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; 
} 
관련 문제