当应用程序进入后台时,关闭popover

时间:2013-03-05 12:49:13

标签: iphone ios uipopovercontroller

当应用程序在后台进入时如何解除popover?

4 个答案:

答案 0 :(得分:5)

您可以使用appdelegate.m文件中的委托方法

来执行此操作
- (void)applicationDidEnterBackground:(UIApplication *)application
{
    //put your dissmiss popover code here
}

答案 1 :(得分:5)

最好为UIApplicationDidEnterBackgroundNotificationUIApplicationWillResignActiveNotification注册您的控制器,并在应用程序转到后台时解除它,这将使您的生活变得更加轻松。

viewDidLoad

中注册通知
[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(myMethod)
                                                 name:UIApplicationDidEnterBackgroundNotification object:nil];

实施方法和

  -(void)myMethod{
    // dismiss popview here
    }

最终取消注册视图控制器中的通知

-(void)dealloc{
[[NSNotificationCenter defaultCenter] removeObserver:self];
}

答案 2 :(得分:4)

在您的应用委托代理的NSNotification方法中发送willResignActive,并在包含该弹出式窗口的视图控制器中监听它,并在收到通知时将其解除为弹出窗口。

答案 3 :(得分:0)

试试这个

- (void)applicationDidEnterBackground:(UIApplication *)application
{
   //[popover dissmissPopoverAnimated:YES];
}