O que acontece com o UIViewController ao minimizar a aplicação?
sobes.tech IA
Resposta da IA
Ao minimizar a aplicação, o UIViewController atualmente exibido passa pelas seguintes fases do ciclo de vida:
- viewWillDisappear: O método é chamado antes de a vista do controlador deixar de ser visível. Aqui, pode guardar o estado da interface de utilizador ou cancelar operações.
- viewDidDisappear: O método é chamado após a vista do controlador estar completamente oculta.
- applicationWillResignActive: É chamado no
AppDelegateantes de a aplicação passar de ativo para inativo (por exemplo, ao minimizar ou receber uma chamada). - applicationDidEnterBackground: É chamado no
AppDelegateapós a aplicação entrar em segundo plano. Neste estado, a aplicação tem um tempo limitado para executar tarefas e pode ser suspensa ou terminada pelo sistema. OUIViewControllerpermanece na memória, mas a sua vista não é exibida.
Se a aplicação permanecer em segundo plano e não for encerrada pelo sistema, ao retornar ao estado ativo, o UIViewController passa pelas fases inversas:
- applicationWillEnterForeground: É chamado no
AppDelegateantes de a aplicação voltar do fundo para o ativo. - applicationDidBecomeActive: É chamado no
AppDelegateapós a aplicação voltar a estar ativa. - viewWillAppear: É chamado antes de a vista do controlador se tornar visível. Aqui, pode atualizar a UI.
- viewDidAppear: É chamado após a vista do controlador se tornar visível.
É importante notar que o objeto UIViewController não é removido da memória ao minimizar, a menos que o sistema o descarte explicitamente devido à falta de recursos (o que acontece raramente e depende de muitos fatores). A vista (view) do controlador também pode ser descarregada da memória (viewWillUnload, viewDidUnload - métodos removidos no iOS 6) se não for necessária naquele momento e o sistema precisar de memória. Nesse caso, ao aceder novamente a view, ela será recriada.