Iphone 确定UIViewController是否由于应用程序退出而关闭?

Iphone 确定UIViewController是否由于应用程序退出而关闭?,iphone,objective-c,Iphone,Objective C,如果因为应用程序正在退出而调用它,是否有一种方法可以在视图中测试它是否会消失,而不是以正常的方式将其关闭?关闭当前视图后,将调用应用程序委托中的方法applicationWillTerminate。我想做不同的事情,这取决于它是由于IBAction还是用户单击菜单按钮而被取消 谢谢 我还没有将其用于您的目的,但是UIApplicationWillResignActiveNotification通知可能会在调用applicationWillTerminate之前出现 扔 [[NSNotificat

如果因为应用程序正在退出而调用它,是否有一种方法可以在视图中测试它是否会消失,而不是以正常的方式将其关闭?关闭当前视图后,将调用应用程序委托中的方法applicationWillTerminate。我想做不同的事情,这取决于它是由于IBAction还是用户单击菜单按钮而被取消


谢谢

我还没有将其用于您的目的,但是UIApplicationWillResignActiveNotification通知可能会在调用applicationWillTerminate之前出现

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResign:) name:UIApplicationWillResignActiveNotification object:NULL];

。。。进入UIViewController进行测试。

您应该使用观察控制器中的
UIApplicationWillTerminateNotification
,设置一个标志,然后检查
视图中的标志是否会消失
实现

NSNotificationCenter* defaultCenter = [NSNotificationCenter defaultCenter];
[defaultCenter addObserver:self       
                  selector:@selector(applicationWillTerminate:)
                      name:UIApplicationWillTerminateNotification
                    object:nil];

UIApplicationWillResignActiveNotification在应用程序因菜单按钮而关闭时似乎不会被触发。不过,applicationWillTerminate总是会触发。我发现ViewWillEnglish会在该通知发出之前被调用。那么设置旗帜又有什么关系呢?