2017-02-04 48 views
0

這是我如何創建併發布自定義一個UIWindow:自定義一個UIWindow其根的UINavigationController沒有被刪除

class mainViewController: UIViewController { 

    var customWindow: UIWindow? 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     self.customWindow = UIWindow() 
     self.customWindow!.rootViewController = UINavigationController(rootViewController: UITableViewController(style: .plain)) 
     self.customWindow!.isHidden = false 
    } 

    deinit { 
     self.customWindow?.rootViewController = nil 
     self.customWindow?.isHidden = true 
     self.customWindow = nil 
    } 
} 

deinit後,customWindow在調試視圖層次依然存在,它是什麼,我的思念?

回答

-1

以下是工作代碼和完全擺脫了一個UIWindow和它的兄弟層次:

if let rootVC = self.customWindow?.rootViewController { 
    rootVC.dismiss(animated: false, completion: nil) 
    self.customWindow = nil 
} 
+0

爲什麼downvote,上面的代碼執行後,一個UIWindow似乎被刪除,我已經在調試視圖層次檢查它,請解釋我是否做錯了,非常感謝! – AamirR

+0

匿名倒票是我堆棧溢出最不喜歡的功能之一。你怎麼解決這個問題(如果確實存在的話)而不知道爲什麼這個人被拒絕投票呢?我從來沒有投下他人對我回答的問題的回答,但我卻投了其他人的票。 – AamirR