presentModalViewController检测动画完成

时间:2012-03-18 04:49:22

标签: objective-c ios animation modalviewcontroller presentmodalviewcontroller

我注意到iOS 5引入了额外的参数以及检测视图控制器的演示动画何时完成的方法。

有没有办法在早期版本中执行此操作,例如iOS 4.x?

我使用presentModalViewController来呈现控制器,我注意到除非动画已完成,否则无法调用dismiss方法。

那么如何检测动画何时完成,以便我可以将其关闭?

2 个答案:

答案 0 :(得分:0)

没有确切的方法可以做到这一点 - 您可以期待的最好的方法是使用呈现视图控制器中的viewDidDisappear:。确保使用布尔实例变量来确定您是否因为模态视图控制器正在显示而消失,或者其他原因。

老实说,如果你正在构建新软件,我严厉地鼓励你以iOS 5及更高版本为目标。绝大多数人已升级,剩下的将在几个月内升级;毫无理由支持iOS 4用于新项目。

答案 1 :(得分:0)

是否只是说“等待,而我提出网络请求”?也许你可以使用一个视图(全尺寸附加到keyWindow)而不是整个视图控制器。启动网络请求的vc可以显示视图并使用您喜欢的任何动画将其删除。我有一个课这样做。如果您想尝试我会告诉我,我会将其粘贴。