当用户按下按钮时,我有一个视图控制器(视图A)呈现模态视图(B),视图B本身有一个按钮来呈现视图C.我的问题是如果用户退出应用程序时如果显示视图B或C,则下次启动应用程序时将显示相同的视图。有没有办法在退出时关闭视图B和C,或者在应用程序启动时显示视图A? 谢谢你的帮助
答案 0 :(得分:6)
我假设关闭时你的意思是当应用程序进入后台时。
在您的app委托中,您可以通过applicationDidEnterBackground:方法关闭您的控制器。
最好的方法可能是在视图控制器类中添加一个观察者:
- (void) viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appClosing) name:@"appClosing" object:nil];
}
- (void) dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"appClosing" object:nil];
[super dealloc];
}
- (void) appClosing
{
[self dismissModalViewControllerAnimated:YES];
}
并在您的应用代表中发布通知:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[[NSNotificationCenter defaultCenter] postNotificationName:@"appClosing" object:nil];
}