Sobes.tech
Junior — Middle

Kas on võimalik kasutada mitut UIWindow objekti ühes rakenduses?

sobes.tech AI

Vastus AI-lt

Jah, iOS rakenduses saab kasutada mitut UIWindow objekti. Tavaliselt on rakendusel üks peamine aken (võtmeaken), kuid mitme stseeni (UIScene) ja välineekraanide toe kasutamisel on mitme akna kasutamine muutunud tavaliseks.

Näited mitme UIWindow kasutamisest:

  • Mitme stseeni tugi iPadOS-is, kus iga aken vastab eraldi stseenile.
  • Hüpikakende või overlay'ide loomine peamise liidese kohal.
  • Sisu kuvamine välistel ekraanidel.

Oluline on iga UIWindow nähtavust ja hierarhiat õigesti hallata ning määrata sellele rootViewController.

Näide täiendava akna loomisest:

let newWindow = UIWindow(frame: UIScreen.main.bounds)
newWindow.rootViewController = UIViewController()
newWindow.windowLevel = .alert + 1 // et aken oleks peamise kohal
newWindow.makeKeyAndVisible()

Seega on mitme UIWindow kasutamine võimalik ja kasulik erinevates stsenaariumides.