Sobes.tech
Middle

Uygulama küçültüldüğünde UIViewController ile ne olur?

sobes.tech yapay zeka

AI'dan gelen yanıt

Uygulama simge durumuna getirildiğinde, şu yaşam döngüsü aşamalarından geçen şu an görüntülenen UIViewController:

  1. viewWillDisappear: Bu yöntem, denetleyicinin görünümünün görünmez olmadan önce çağrılır. Burada UI durumunu kaydedebilir veya işlemleri iptal edebilirsiniz.
  2. viewDidDisappear: Bu yöntem, denetleyicinin görünümünün tamamen gizlendiği sonra çağrılır.
  3. applicationWillResignActive: Bu, AppDelegate içinde, uygulama aktif durumdan pasif duruma geçmeden önce çağrılır (örneğin, simge durumuna getirirken veya bir arama alırken).
  4. applicationDidEnterBackground: Bu, AppDelegate içinde, uygulama arka plana geçtiğinde çağrılır. Bu durumda, uygulamanın görevleri yerine getirmesi için sınırlı bir zamanı vardır ve sistem tarafından askıya alınabilir veya sonlandırılabilir. UIViewController bellekte kalır, ancak görünümü gösterilmez.

Uygulama arka planda kalır ve sistem tarafından kapatılmazsa, aktif duruma geri döndüğünde, UIViewController şu ters aşamalardan geçer:

  1. applicationWillEnterForeground: Bu, AppDelegate içinde, uygulama arka plandan tekrar ön plana geçmeden önce çağrılır.
  2. applicationDidBecomeActive: Bu, AppDelegate içinde, uygulama tekrar aktif hale geldiğinde çağrılır.
  3. viewWillAppear: Bu, denetleyicinin görünümünün görünür olmadan önce çağrılır. Burada UI güncellenebilir.
  4. viewDidAppear: Bu, denetleyicinin görünümünün görünür hale geldiği sonra çağrılır.

Önemli not: UIViewController nesnesi, simge durumuna getirildiğinde, sistem kaynak yetersizliği nedeniyle açıkça boşaltılmadıkça (bu nadiren olur ve birçok faktöre bağlıdır) bellekte silinmez. Denetleyicinin görünümü (view) de bellekte boşaltılabilir (viewWillUnload, viewDidUnload - metodlar iOS 6'da kaldırıldı), eğer şu anda gerekliyse ve sistem belleğe ihtiyaç duyuyorsa. Bu durumda, view'e bir sonraki erişimde yeniden oluşturulacaktır.