Wykonuję instrukcje (wbudowany przepływ) w mojej aplikacji i chciałbym mieć przycisk pomijania. Przycisk znajduje się na viewController, więc doszedłem do wniosku, że najlepszym sposobem na przejście do innego viewController byłoby okno delegata aplikacji dostępu.Swift - Uzyskiwanie dostępu do okna AppDelegate od viewController
Jednak wciąż pojawia mi się błąd, że AppDelegate.Type nie ma członka o nazwie "okno".
@IBAction func skipWalkthrough(sender: AnyObject) {
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
AppDelegate.window!.rootViewController = RootViewController
}
Czy jest coś nie tak z takim podejściem?
Z góry dziękuję!
Ok w porządku, co za błąd studip! Btw, teraz jest problem z RootViewController, jak uzyskać dostęp do kontrolera widoku, który jest zadeklarowany w storyboardie? Zgaduję, że zrobienie nowej instancji nie jest dobrym pomysłem? Chodzi mi o to, że RootViewController() prowadzi do czarnego ekranu, więc powinno być inne oczekiwanie na dostęp do takiego kontrolera. – DCDC
Oto jak to zrobić w moim kodzie 'let storyboardId =" LoginStoryboardIdentifier "' 'self.window? .rootViewController = self.window? .rootViewController? .storyboard? .instantiateViewControllerWithIdentifier (storyboardId) as? UIViewController' –
Działa doskonale, ale zauważając zużycie pamięci, nie zauważam zmniejszenia pamięci po zamianie kontrolera Root View (a) na (b). Oznacza to, że (a) nie został wymazany z pamięci, prawda? Jak wymazać to z pamięci 1. a następnie pokazać (b) kontroler –