Делегат выглядит следующим образом:
public class DoneAlertViewDelegate : UIAlertViewDelegate
{
UINavigationController controller;
EKEventStore store;
EKEvent ekEvent;
public DoneAlertViewDelegate(UINavigationController controller, EKEventStore storeEvent, EKEvent userEvent)
{
this.controller = controller;
store = storeEvent;
ekEvent = userEvent;
}
public override void Clicked (UIAlertView alertview, int buttonIndex)
{
if(buttonIndex == 0)
{
var alert = new UIAlertView("Date Stored", "Date saved in calendar",null,"OK",null);
alert.Show();
SaveEvent();
controller.PopViewControllerAnimated(true);
}
else if(buttonIndex == 1)
{
controller.PopToRootViewController(true);
}
}
public override void Canceled (UIAlertView alertView)
{
}
public void SaveEvent()
{
var err = new NSError();
store.SaveEvent(ekEvent,EKSpan.ThisEvent,out err);
}
}
Проблема в том, что при отладке всегда происходит сбой, вызывается ошибка отладчика (SIGSEGV). Однако, когда я просто запускаю программу, она выполняется как запланировано. Это известная проблема с monotouch (я получаю исключение Objective C), или я просто пропускаю какой-то важный код, чтобы заставить это работать? Заранее спасибо!
РЕДАКТИРОВАТЬ: выход приложения -
Возникло исключение Monotouch.