Middle
Kas notiek ar UIViewController, kad programma tiek samazināta?
sobes.tech AI
Atbilde no AI
Kad lietojumprogramma tiek, cik UIViewController, kas pašlaik ir irādīts lietotājam, iet caur šādām dzīves cikla stadijām:
- viewWillDisappear: Šis metodes izsaukts pirms kontroliera skats vairs nav redzams. Šeit var saglabāt UI stāvokli vai atcelt operācijas.
- viewDidDisappear: Šis metodes izsaukts pēc tam, kad kontroliera skats ir pilnībā paslēpts.
- applicationWillResignActive: Šis metodes izsaukts
AppDelegatepirms lietojumprogramma pāriet no aktīva uz neaktīvu stāvokli (piemēram, zvanot vai minimizējot). - applicationDidEnterBackground: Šis metodes izsaukts
AppDelegatepēc tam, kad lietojumprogramma ir pārgājusi uz fonu. Šajā stāvoklī lietojumprogrammai ir ierobežots laiks veikt uzdevumus un tā var tikt pārtraukta vai beigtas sistēmas.UIViewControlleršajā laikā paliek atmiņā, bet tā skats netiek rādīts.
Ja lietojumprogramma paliek fonā un netiek beigtas sistēmas, tad nākamajā aktivizācijā UIViewController pāriet atpakaļ uz šādām stadijām:
- applicationWillEnterForeground: Šis metodes izsaukts
AppDelegatepirms lietojumprogramma atgriežas no fona aktīvajā stāvoklī. - applicationDidBecomeActive: Šis metodes izsaukts
AppDelegatepēc tam, kad lietojumprogramma atkal kļūst aktīva. - viewWillAppear: Šis metodes izsaukts pirms kontroliera skats kļūst redzams. Šeit var atjaunot UI.
- viewDidAppear: Šis metodes izsaukts pēc tam, kad skats kļūst redzams.
Svarīgi atzīmēt, ka pats UIViewController objekts netiek izdzēsts no atmiņas, ja tas nav skaidri izņemts no sistēmas resursu trūkuma dēļ (kas ir reti un atkarīgs no daudziem faktoriem). Kontroliera skats (view) arī var tikt izņemts no atmiņas (viewWillUnload, viewDidUnload - metodes tika noņemtas iOS 6), ja tas šobrīd nav nepieciešams un sistēma prasa atmiņu. Šādā gadījumā, nākamreiz piekļūstot view, tas tiks izveidots no jauna.