【发布时间】:2010-10-14 02:51:24
【问题描述】:
如果我关闭模态 VC 并在不到一定时间内再次呈现它(或另一个),它不会出现。 我错过了什么吗?
【问题讨论】:
标签: iphone objective-c modalviewcontroller presentmodalviewcontroller
如果我关闭模态 VC 并在不到一定时间内再次呈现它(或另一个),它不会出现。 我错过了什么吗?
【问题讨论】:
标签: iphone objective-c modalviewcontroller presentmodalviewcontroller
是的,你不能这样做。我假设你所做的是这样的:
[self dismissModalViewControllerAnimated:YES];
[self presentModalViewController:myNewController animated:YES];
这不起作用。我不知道确切原因,但它与我相信的动画有关。您的选择是在没有动画的情况下关闭第一个,或者等待在父级的 viewDidAppear 中显示新的(或者可能是前一个模式视图的 viewDidDisappear,但不确定这是否有效)。
【讨论】:
你不能一个接一个地关闭两个模态视图控制器,除了另一个海报的建议之外,你可以等待一小段时间,然后再关闭另一个模态视图,例如
[self performSelector:@selector(method) withObject:nil afterDelay:.5];
调用的方法只是关闭您的其他模态视图。 代码的 sn-p 会在 0.5 秒后执行选择器,并且可以在遇到您描述的动画计时问题时使用,以分隔调用时间以便它们正确执行。
【讨论】: