弹出视图控制器后警报查看问题

时间:2014-03-15 06:56:10

标签: ios objective-c

我有一个看起来像这样的堆栈: 导航控制器 - >表视图控制器 - >另一个表视图控制器。

发生的事情是,AnotherTableViewController中的方法显示警报视图,然后将控制器弹出堆栈。警报视图显示正常,但是在单击“关闭”按钮后,它会抛出EXC_BAD_ACCESS,我知道当您向已发布的对象发送消息时会发生什么。我认为正在发生的是警报视图正在将dismissWithClickedButtonAtIndex:Animated:消息发送给我已分配给AnotherTableViewController的代理,但是在我弹出它之后它就被释放了所以现在在消息发送之后,它会抛出错误。 弹出控制器后(或之前),我该如何显示警报视图?

我也使用AnotherTableViewController中的属性并在警报视图中显示它们。

1 个答案:

答案 0 :(得分:3)

在显示UIAlertView时,您不应该像下面那样设置代理,

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Please enter current and new password" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];

因为你没有对委托方法做任何事情,所以这个解决方案应该可行