【发布时间】:2014-05-05 23:12:22
【问题描述】:
我有一个UIView,我正在以编程方式将其添加到我的UIViewController。这个视图包含一些按钮,其中一个打开一个UIActionSheet。
当我点击任一UIActionSheet 选项时,应用程序会在调用委托之前立即崩溃。
我假设这是一个内存问题,但我想我已经涵盖了所有的角落。
- 自定义
UIView是父视图控制器上的强属性。 - 正在从父视图控制器的标签栏显示操作表。
- 操作表委托是
UIView,并且委托方法已正确实现。
错误是 EXC_BAD_ACCESS。 ([ContactOptionView actionSheet:clickedButtonAtIndex:]: 消息发送到解除分配的实例)
任何帮助,非常感谢。
使用此代码创建操作表,其中 CDField 对象是核心数据 NSManagedObject:
UIActionSheet *sheet = [[UIActionSheet alloc] init];
sheet.title = title;
for (CDField *field in fields) {
[sheet addButtonWithTitle:field.value];
}
sheet.cancelButtonIndex = [sheet addButtonWithTitle:@"Cancel"];
sheet.delegate = self;
[sheet showFromTabBar:self.parentViewController.tabBarController.tabBar];
【问题讨论】:
-
你能显示错误信息吗?
-
请也显示一些代码。谢谢。
-
@Larme - 问题已更新。
-
您是否对所有“field.value”值进行了 NSLog 记录以确保它们有效?
-
由于单击按钮后它会崩溃,我认为您的 UIActionSheet Delegate 方法的代码可能很有用。另外,尝试让 NSZombies 了解更多有关崩溃的信息。还要尝试确定导致崩溃的行。
标签: ios objective-c uiactionsheet