2010-09-04 43 views
4

是否有任何確定是否正從後臺應用程序加載視圖的方法?從後臺打開應用程序時調用了什麼UIViewController方法?

在3.X我會依靠viewDidLoad做一些initalization等,但是這不是4.X的情況,因爲你不能依靠viewDidLoad方法來調用。

我想避免在appdelegate中添加額外的標誌來檢測這個,我寧願在UIViewController中使用可靠的方法來做到這一點,但似乎無法在UIViewController的生命週期中找到任何可以幫助我的東西在這裏。

任何想法?你如何處理這種情況?

回答

-3
- (void)viewWillAppear:(BOOL)animated 

- (void)viewDidLoad 

應用程序委託方法

- (void)applicationWillEnterForeground:(UIApplication *)applicationUIApplicationDelegate

將被稱爲應用程序中輸入的前景後,雖然可以爲UIApplicationWillEnterForegroundNotification添加一個觀察者在你的任何觀點。

+0

是的,我確實知道viewWillAppear會按名稱的名稱被調用,我不能將此行爲的基礎放在此方法上,因爲當從堆棧彈出視圖以顯示我們正在說話的視圖時,它也會被框架調用關於。對不起,如果這不是從我原來的帖子清楚。 – Kaspa 2010-09-05 22:23:23

+36

@Kaspa - 實際上,viewWillAppear不會在從後臺返回時調用(http://stackoverflow.com/questions/5277940/why-does-viewwillappear-not-get-called-when-an-app-comes-back-從背景中) – 2011-10-18 01:38:33

+0

viewWillAppear不會被調用。 – quantumpotato 2013-10-15 20:27:17