Sobes.tech
Middle

რა ხდება UIViewController-თან პროგრამის მინიმიზაციისას?

sobes.tech AI

პასუხი AI-სგან

Кушумны сагынганда UIViewController, бугунга чейин колдонуучуга көрсөтүлүп турган, төмөнкү жашоо цикли стадияларын өтөт:

  1. viewWillDisappear: Метод контроллердин көрүнүшү көрүнбөй калгандан мурун чакырылат. Бул жерде UI абалын сактоо же операцияларды жокко чыгарыш мүмкүн.
  2. viewDidDisappear: Метод контроллердин көрүнүшү толугу менен жашырылган соң чакырылат.
  3. applicationWillResignActive: Бул метод AppDelegate ичинде чакырылат, колдонмо активдүү эмес абалга өтөөрдө (мисалы, чалуу алуу же сөлөкөттү кыскартуу учурунда).
  4. applicationDidEnterBackground: Бул метод AppDelegate ичинде чакырылат, колдонмо фон режимине өткөндө. Бул абалда колдонмо чектелген убакытта иштейт жана системанын токтотуусу же аяктоо мүмкүн. UIViewController ошол учурда эсинде калат, бирок анын көрүнүшү көрсөтүлбөйт.

Эгер колдонмо фон режиминде калса жана системанын тарабынан аяктоого учурабаса, кийинки активдештирүүдө UIViewController төмөнкү стадияларды өтөт:

  1. applicationWillEnterForeground: Бул метод AppDelegate ичинде чакырылат, колдонмо фондук режимден кайра активдүү абалга өтөөрдө.
  2. applicationDidBecomeActive: Бул метод AppDelegate ичинде чакырылат, колдонмо кайра активдүү болгондо.
  3. viewWillAppear: Бул метод контроллердин көрүнүшү көрүнө баштаганда чакырылат. Бул жерде UI жаңыртылат.
  4. viewDidAppear: Бул метод көрүнүшү көрүнгөндөн кийин чакырылат.

Маанилүү, UIViewController объектиси өзү сөлөкөттөн чыгарылбайт, эгер ал системанын ресурстарды жетишсиздигинен улам ачык көрсөтүлбөсө (бул сейрек кездешет жана көп факторго көз каранды). Контроллердин көрүнүшү (view) да эсинде калтырылышы мүмкүн (viewWillUnload, viewDidUnload - бул iOS 6дан кийин алынып салынган), эгер ал учурда керек болбосо жана системага эс керектелсе. Анда, кийинки кирүүдө view кайра түзүлөт.