的擺脫我知道,通常情況下,當一個UIViewController A
呈現出另一種的UIViewController B
的A
的presentedViewController
屬性設置爲B
。所以A
保留在內存中。如何調用UIViewController.present(是presentViewController)和presentingViewController
簡單地說,我想A
到目前B
,但然後有A
得到清理,因爲它永遠不會返回。
有關更完整的解釋和理由,在我的應用程序中,我有一個UINavigationController,它可能在層次結構中有一堆屏幕。在某些時候(例如使用註銷),我想通過調用self.present(loginViewController, animated: true, completion: nil)
來呈現一個新的視圖控制器(登錄)。但是,通過從登錄控制器調用「解除」,應用程序不會再回到UINavigationController。如果執行登錄,登錄視圖控制器將「呈現」一個新的UINavigationController。
我想要原始的UINavigationController及其所有層次結構得到清理,因爲層次結構中可能有許多屏幕,看起來將永遠不會再次使用。 (此外,在這種情況下,當用戶啓動應用程序時,它們是「自動登錄」的,因此UINavigationController是根控制器。因此,在註銷時,它不能「解除」自身回到登錄屏幕。)
謝謝!
第一點:它更多的是我有一個UINavigationController,它可能有一對夫婦在它的層次結構中的幾十個屏幕。我想擺脫所有這些(但就你而言,也許這並不重要)。 – SuperDuperTango
第二點:不,啓動方式不同於我所尋找的。 – SuperDuperTango
我認爲你的第三點是我要找的。我不知道如何替代視圖控制器。時間更多的搜索/ SOing ... :) – SuperDuperTango