gpt4 book ai didi

iphone - 无法检测 EKEventEditViewController 中的崩溃

转载 作者:行者123 更新时间:2023-11-29 04:50:04 25 4
gpt4 key购买 nike

当我单击 EKEventEditViewController 上的“完成”按钮时,应用程序崩溃并显示“exc_bad_access”。我还使用断点来检测它,但找不到它。 gdb中没有关于crash的信息。我应该在哪里检查崩溃。完成按钮不会将控制转移到 EKEventEditViewDelegate - 方法。它只是崩溃了。请帮帮我。

这是我的代码

-(void)viewWillAppear:(BOOL)animated
{

EKEventEditViewController *addController = [[EKEventEditViewController alloc]
initWithNibName:nil bundle:nil];
addController.eventStore = self.eventStore;
addController.event = event;
addController.editViewDelegate = self;
[self presentModalViewController:addController animated:YES];
[super viewWillAppear:YES];

}

#pragma mark -
#pragma mark EKEventEditViewDelegate

- (void)eventEditViewController:(EKEventEditViewController *)controller
didCompleteWithAction:(EKEventEditViewAction)action {

NSError *error = nil;
EKEvent *thisEvent = controller.event;

switch (action) {

case EKEventEditViewActionCanceled:
break;

case EKEventEditViewActionSaved:
[controller.eventStore saveEvent:controller.event
span:EKSpanThisEvent error:&error];
break;

case EKEventEditViewActionDeleted:
[controller.eventStore removeEvent:thisEvent span:EKSpanThisEvent
error:&error];
break;

default:
break;
}

[controller dismissModalViewControllerAnimated:YES];
[self backTopreviousController];
}

-(void)backTopreviousController
{
[self.navigationController popToRootViewControllerAnimated:YES];
}

最佳答案

exc_bad_access 表明您正在访问已被释放的内存(可能是内存管理问题)。这些问题有点难以解决,因为您可能会在某个时刻释放一个对象(您不应该这样做),并且稍后在访问该对象时才会遇到问题。

您可以尝试以下操作:

  1. 点击“运行按钮下拉菜单”
  2. 从列表中选择个人资料
  3. “Instruments”程序应该打开,您还可以在其中选择Zombies
  4. 现在您可以与您的应用交互并尝试引发错误
  5. 一旦发生错误,您应该会收到有关对象何时被释放并因此被释放的提示。

Zombies
(来源:dimzzy.com)

关于iphone - 无法检测 EKEventEditViewController 中的崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8984328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com