当应用程序在ios上的后台输入时,如何关闭模态视图

Ant*_*ony 3 objective-c modalviewcontroller ios

我有一个在方法中创建的模态视图(主视图中没有引用),我想在我的应用程序在后台输入时自动执行dismissModalViewControllerAnimated.我怎样才能做到这一点 ?

小智 9

在主视图的viewDidLoad中,添加观察者以在应用程序转到后台时收到通知.

- (void) viewDidLoad
{
    [[NSNotificationCenter defaultCenter] addObserver:self 
        selector:@selector(goToBackground) 
        name:UIApplicationWillResignActiveNotification object:nil];
}
Run Code Online (Sandbox Code Playgroud)

定义函数goToBackground().它将在应用程序转到后台时调用

- (void) goToBackground
{
    [self dismissModalViewControllerAnimated: NO]; // no need to animate 
}
Run Code Online (Sandbox Code Playgroud)

不要忘记删除观察者

- (void) dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}
Run Code Online (Sandbox Code Playgroud)