1

私はiPhoneカレンダーを使用して1つの簡単なアプリケーションを実行しています。ここでは、iPhoneネイティブカレンダーイベントをiPhoneアプリにインポートする必要があります。これどうやってするの。コードがありますが、機能していないようです。iPhoneのネイティブカレンダーにいくつかのイベントを追加しました。しかし、私が取得したとき、それは何もフェッチしていません。これがコードです。

-(IBAction)importCalEvents:(id)sender
{
    NSArray *caleandarsArray = [[NSArray alloc] init];
    caleandarsArray = [[eventStore calendars] retain]; 
    NSLog(@"Calendars from Array : %@", caleandarsArray);

for (EKCalendar *CalendarEK in caleandarsArray) 
 {
    NSLog(@"Calendar Title : %@", CalendarEK.title);    
 }        
}
4

1 に答える 1

3

このようにすべてのカレンダーイベントを取得できます。

これらの2つのフレームワークをインポートします(プロジェクトに存在しない場合は追加します)。

1 EventKit / EventKit.h

2)EventKitUI / EventKitUI.h

ボタンクリックでこの関数を呼び出す

-(void)EventList{

    EKEventStore *eventStore = [[EKEventStore alloc] init];

    NSDate *startDate = [[NSDate alloc] init];
    NSDate *endDate = [[NSDate alloc] initWithTimeInterval:3600 sinceDate:startDate];

    NSArray *calendars = [eventStore calendars];
    NSPredicate *predicate = [eventStore predicateForEventsWithStartDate:startDate
                                                                 endDate:endDate calendars:calendars];
    NSArray *matchingEvents = [eventStore eventsMatchingPredicate:predicate];
    EKEvent *anEvent;

    NSLog(@"Total Events >> %d",[matchingEvents count]);

    for (int j=0; j < [ matchingEvents count]; j++) {

        anEvent = [matchingEvents objectAtIndex:j];

        NSLog(@"Title >>>%@",anEvent.title);
        NSLog(@"start date is %@ \n End Date is >>> %@",anEvent.startDate,anEvent.endDate);

    }   
}

そして、要件に従ってstartDateとEndDateを設定します。

だからあなたはあなたが望むすべての詳細を得ることができます。

幸運..

于 2012-09-11T09:36:23.920 に答える