Monotouch EKEvent Заметки не сохраняются - PullRequest
2 голосов
/ 25 января 2011

Что я здесь не так делаю?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);
   });

  }
}

1 Ответ

0 голосов
/ 03 августа 2011

API, скорее всего, изменился, потому что вышеприведенное не скомпилирует «как есть».Поэтому я обновил ваш:

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

до

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

В противном случае, используя последнюю версию MonoTouch, я получаю обе строки, отображаемые в «Выходных данных приложения» (приложение, запущенное на устройстве).

 Lunch at McDonalds
 hello

Может быть, это было исправлено при изменении API?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...