2

私はここで何が間違っているのですか?currentEvent.Titleは正しく出力されます。currentEvent.Notesは常に空白です。

public void CalendarEvents()
{
   EKEventStore store = new EKEventStore();
   EKCalendar calendar = store.DefaultCalendarForNewEvents;

   // Query the event
   if (calendar != null)
   {
     // Add a new event
     EKEvent newEvent = EKEvent.FromStore(store);
     newEvent.Title = "Lunch at McDonalds";
     newEvent.Calendar = calendar;
     newEvent.StartDate = DateTime.Now.Date;
     newEvent.EndDate = DateTime.Now.Date.AddDays(4);
     newEvent.Availability = EKEventAvailability.Free;
     newEvent.Notes = "hello";
     store.SaveEvent(newEvent, EKSpan.ThisEvent, new IntPtr());

   // Searches for every event in the next year
   NSPredicate predicate = store.PredicateForEvents(NSDate.Now,DateTime.Now.AddDays(360),new EKCalendar[] {calendar});

   store.EnumerateEvents(predicate, delegate(EKEvent currentEvent, ref bool stop)
   {
       // Perform your check for an event type
       Console.WriteLine(currentEvent.Title);
       Console.WriteLine(currentEvent.Notes);
   });

  }
}
4

1 に答える 1

0

上記は「そのまま」コンパイルされないため、API が変更された可能性があります。だから私はあなたを更新しました:

 store.SaveEvent(newEvent, EKSpan.ThisEvent, new IntPtr());

 NSError error;
 store.SaveEvent(newEvent, EKSpan.ThisEvent, out error);

それ以外の場合、最新の MonoTouch を使用すると、「アプリケーション出力」(デバイスで実行されているアプリ) に両方の文字列が表示されます。

 Lunch at McDonalds
 hello

APIが変更されたときに修正されたのでしょうか?

于 2011-08-03T17:02:43.653 に答える