2017-02-04 2 views
0

を削除されていない:customWindowはまだデバッグビュー階層に存在し、deinitカスタムUIWindowとそのルートUINavigationControllerは、これは私が作成したカスタムUIWindow解除方法です

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 
    } 
} 

を、それは私が行方不明だということは何ですか?

答えて

-1

後は、コードを働いていると完全にUIWindowとその兄弟階層を取り除く:

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

downvoteは、上記のコードを実行した後、UIWindowが削除されたようですなぜ、私は、デバッグビュー階層でそれをチェックしています私が何か間違っていると説明してください、多くの感謝! – AamirR

+0

匿名のダウン投票は、スタックオーバーフローの私の最も好きな機能の一つです。人がなぜ投票しなかったのかを知らずに、問題を解決するにはどうすればよいですか?私は答えた質問に対して別の人の回答を投票したことはありませんが、私は他の人に投票します。 – AamirR

関連する問題