Usando Objective-C
Usted debe registrar una UIApplicationWillEnterForegroundNotification
en su ViewController
's viewDidLoad
método y cada vez que la aplicación se vuelve de fondo se puede hacer lo que quiere hacer en el método registrado para la notificación. ViewController
'S viewWillAppear o viewDidAppear no serán llamados cuando la aplicación se vuelve de fondo al primer plano.
-(void)viewDidLoad{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doYourStuff)
name:UIApplicationWillEnterForegroundNotification object:nil];
}
-(void)doYourStuff{
// do whatever you want to do when app comes back from background.
}
No olvide anular el registro de la notificación para la que está registrado.
-(void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
Tenga en cuenta que si registra su viewController
para UIApplicationDidBecomeActiveNotification
entonces, se llamaría a su método cada vez que su aplicación se active, no se recomienda registrarse viewController
para esta notificación.
Usando Swift
Para agregar observador puede usar el siguiente código
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: "doYourStuff", name: UIApplication.willEnterForegroundNotification, object: nil)
}
func doYourStuff(){
// your code
}
Para eliminar el observador, puede usar la función deinit de swift.
deinit {
NotificationCenter.default.removeObserver(self)
}