- 獲取的通知(TXT消息)
- 或打開/關閉通知中心
- 或者切換到其他應用的無財產,回來
基本上,應用程序從短暫的背景回來。
問題
佈局是好的,但是從背景恢復後我的一些特性,我從CoreData得到的是空的。幾乎所有的視圖控制器都存在這個問題。
項目
這是有主的TabBar控制器應用,而在標籤中的兩個navigationcontrollers,也許兩個層面viewcontrollers的,有自己的孩子UIViews(即使用一些信息的)。後端由Parse和CoreData組成。
怪異的一部分
返回從背景 - >屬性上viewWillAppear中確定(創建ID的備份) - >它們是零秒後 - >我需要手動讓他們回來(從ID我只是存儲)
下面是截圖,把一個叫每5秒函數內的破發點時,檢查當前時間(link to bigger):
我做什麼
NSCoder用於狀態還原,每個視圖控制器都有一個還原ID,但是當應用程序變爲活動狀態時它不會被調用。我不認爲NSCoder是這裏的問題,因爲從操作系統自行殺死它或從用戶處強制退出時使用它的文檔。
我試圖從NSNotificationCenter中手動刷新相應ViewControllers中的內容,如果NSManagedObjects爲零,但它不具備未來性,並且在每個視圖上從來都不是相同的邏輯。
有什麼想法?謝謝!
我的AppDelegate:
- (void)applicationWillResignActive:(UIApplication *)application
{
NSLog(@"Will Resign Active");
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
NSLog(@"Entered Background");
}
- (void)applicationWillEnterForeground:(UIApplication *)application
{
NSLog(@"Will enter Foreground");
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
[[NSNotificationCenter defaultCenter] postNotificationName:@"needsRefresh" object:self userInfo:nil]; // Helpful in some viewcontrollers to save variables that are not nil.
[PF_FBSession.activeSession handleDidBecomeActive];
}
- (void)applicationWillTerminate:(UIApplication *)application
{
NSLog(@"Will Terminate");
}
您是否曾嘗試在'_booking'的setter上放置一個斷點,並查看哪些是無效的?很難知道發生了什麼,因爲你沒有顯示任何實現代碼,或者你有任何通過'applicationWillEnterForeground'發送的通知可能會影響到這一點。 – iwasrobbed
@iWasRobbed修改!我的代表非常空,我將再次編輯更多相關代碼 –
我在Swift項目中遇到同樣的問題。任何人解決這個問題? – nh32rg