如何检测模态视图动画的末尾(当我解雇时)? (我说的是不是我自己创建的MFMailComposeViewController ...)

谢谢

有帮助吗?

解决方案

您的模态视图控制器有一个 -viewDidDisappear: 每当从屏幕上删除视图时,将自动调用的方法。您可以在模态视图控制器中覆盖此方法,以执行您喜欢的任何事情。

另外,您可能需要考虑实施 -viewDidAppear: 视图控制器中的方法在您的模态视图消失的情况下揭示了其视图。

其他提示

您可以子类MFMailComposeViewController和Overload -viewDidDisappear:.

@interface MyCtrler : MFMailComposeViewController
@end
@implementation MyCtrler
-(void)viewDidDisappear:(BOOL)animated {
   [super viewDidDisappear:animated];
   // do anything you like
}
@end

我需要在忽略模态视图后做某事,并且只有当确定模态视图确实消失时(完全已被批准)。因此,ViewDidDisappear及其在模态视图中的朋友对我来说还为时过早。

我发现最简单的只是用nstimer延迟我的代码。当模态视图调用其委托并调用删除模式视图的委托时,它也会在模态视图消失时排队以要运行的代码。时机大约是300ms或400ms。 (有没有办法从某个地方检索实际的时机?)

通常,当动画完成时要通知您通过发送来设置代表 setAnimationdelegate: 到Uiview类。

当VC被解雇时 [someVC dismissModalViewControllerAnimated:YES] 您无法设置动画委托,但是如果您不发送,请对VC视图进行动画 能够 设置委托并在动画完成后通知。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top