2011-03-29 96 views
0

這個問題是另一個結果,我不知道如何用多任務來更新設置包中的NSUserDefaults。現在我做了(感謝@mvds),在applicationWillEnterForeground中將refreshDefaults代碼放入應用程序委託中。用多任務重新加載修改過的視圖

問題是,代碼意味着視圖(背景顏色等)的變化,所以當我在更改設置後回到應用程序後,視圖被顯示,並且之後才被稱爲applicationWillEnterForeground。

這是,它顯示了以前的「主題」,然後它變成了新的。有什麼方法可以解決這個問題,在應用程序顯示之前通知更改?結果是醜陋的,我只是沒有看到lyfecicle中可能會被調用的任何方法。

回答

1

當應用程序進入後臺模式時,系統會截取當前狀態。當應用程序在前臺進行回放時,它會在加載應用程序時首先顯示此屏幕截圖。

如果更改主題顏色,首先看到的是此屏幕截圖,然後顯示和更新視圖。你不能改變這種行爲。

您可以做的唯一的事情就是嘗試在WillEnterBackground方法中顯示不同的東西,如空的UI或閃屏。

+0

感謝您的確認,這殺了我,因爲該應用程序應該非常非常簡單,我打算讓我的大腦出來制定一個「解決方案」。再次感謝! – ferostar 2011-03-29 13:33:02