2011-09-18 194 views
1

顯然,我有一個LoginViewControllerStartUpControllerXcode - 註銷按鈕

  • LoginViewController具有驗證用戶身份和註冊新用戶的功能(presentModalViewController)。一旦用戶登錄,我的系統將顯示StartUpController

在這個StartUpController裏面,我擁有了一切,比如TabBarController,NavigationController等。這個StartUpController實際上處理了5個不同的視圖。

我的問題是:當我的用戶從我的某個視圖中點擊「LogOut」按鈕時,我該如何刪除所有視圖?

我想再次顯示我的LoginViewController ..但同時刪除StartUpController視圖及其所有視圖。

請告訴我如何做到這一點:

回答

3

如果您的驗證的觀點是你的根視圖控制器的看法,請使用您的導航控制器參考-popToRootViewControllerAnimated:方法,如:

[myNavigationController popToRootViewControllerAnimated:YES]; 

假設你沒有對視圖控制器的所有權做任何奇怪的事情,導航控制器將釋放子視圖控制器(這反過來應該釋放它們的視圖和其他屬性)。

+0

謝謝亞歷克斯..我會看看「popToRootViewControllerAnimated:」 –

+0

僅供參考 - 我用這條線來清除所有的VC,因爲根據哪個流程,我的應用程序是否使用導航控制器。這似乎清除了導航堆棧上的所有內容。 [self.parentViewController.navigationController popToRootViewControllerAnimated:YES]; –