iPhone 在呈现模态视图 Controller 时崩溃

标签 iphone memory-management uiviewcontroller crash

我试图在另一个 View 以模态方式呈现后立即显示一个模态视图(第二个是出现的加载 View )。

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    // Show load
    LoadViewController *loader = [[LoadViewController alloc] init];
    [self presentModalViewController: loader animated:NO];
    [loader release];
}

但是当我这样做时,我收到“程序收到信号:“EXC_BAD_ACCESS”。”错误。

堆栈跟踪是:

0  0x30b43234 in -[UIWindowController transitionViewDidComplete:fromView:toView:]
1  0x3095828e in -[UITransitionView notifyDidCompleteTransition:]
2  0x3091af0d in -[UIViewAnimationState sendDelegateAnimationDidStop:finished:]
3  0x3091ad7c in -[UIViewAnimationState animationDidStop:finished:]
4  0x0051e331 in run_animation_callbacks
5  0x0051e109 in CA::timer_callback
6  0x302454a0 in CFRunLoopRunSpecific
7  0x30244628 in CFRunLoopRunInMode
8  0x32044c31 in GSEventRunModal
9  0x32044cf6 in GSEventRun
10 0x309021ee in UIApplicationMain
11 0x00002154 in main at main.m:14

有什么想法吗?我完全被难住了!加载 View 是空的,因此其中肯定没有发生任何导致错误的事情。这是否与在同一事件循环中以模态方式启动 2 个 View 有关?

谢谢

迈克

编辑:非常奇怪...我稍微修改了它,以便在微小的延迟后显示加载 View ,这工作正常!所以它似乎是在同一个事件循环中的东西!

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    // Show load
    [self performSelector:@selector(doit) withObject:nil afterDelay:0.1];
}

- (void)doit {
    [self presentModalViewController:loader animated:YES];  
}

最佳答案

我稍微修改了它,以便在微小的延迟后显示加载 View ,这工作得很好!所以它似乎是在同一个事件循环中的东西!

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    // Show load
    [self performSelector:@selector(doit) withObject:nil afterDelay:0.1];
}

- (void)doit {
    [self presentModalViewController:loader animated:YES];  
}

关于iPhone 在呈现模态视图 Controller 时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1412021/

相关文章:

ios - 如何修复 "nib but didn' t get a UITableView"error?

iphone - 以编程方式创建 plist 文件

iphone - 如何制作和播放程序生成的啁啾声

ios - 如何编辑 UITableViewController

iphone - XCODE:对 <UIFileUploadFallbackRootViewController 开始/结束外观转换的不平衡调用

ios - UIImagePickerControllerOriginalImage 在 iPhone 4 中收到内存警告

c++ - 使用 vector 时的内存管理

c - 如何检查分配给进程中打开文件的内存

c - 如何正确处理 C 中的 malloc 失败,尤其是当存在多个 malloc 时?

ios - 绘制边框 "within"UIViewController