2012-06-05 65 views
0

查看開始iOS 5中的示例以保持您的應用程序狀態,在爲應用程序顯示的第一個viewController中,它們在viewDidLoad:中註冊applicationWillResignActive。這對我來說很有意義,因爲您在顯示第一個視圖時註冊了該通知。在哪裏註冊applicationWillResignActive使用UIStoryboard

我很困惑你是否總是這樣做,或者你通常在哪裏註冊這個通知。 Q1)像他們在這個viewController註冊這個通知,以便他們可以重新創建此視圖? Q2)如果是這樣,我是否爲每個viewController執行此操作?

Q3)我使用UIStoryboard和我的第一個viewController是一個UITabBarController。那麼,我要在第一個標籤的viewController中註冊通知嗎?

我還有一個單獨的DataManager對象,用於保存應用程序的數據,如果這有助於任何人指導我以正確的方向保存數據。謝謝!

回答

0

這些方法都在AppDelegate.m

- (void)applicationWillResignActive:(UIApplication *)application 
{ 
    /* 
    Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 
    Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 
    */ 
} 

你可以在這裏進行自己的行爲。然而,你可以註冊在另一個視圖控制器中「偵聽」該事件(就像你的例子),但這只是爲了更容易地將該事件通知發送到該視圖控制器。

1)不,只是爲了確保當這個VC被加載時它將能夠聽到這個事件。

2)不,只爲那些你想要通過的人很容易就這樣。然而,使用appdelegate.m和每個vc視圖確實顯得更好。 3)取決於你想要保存的數據類型,但通常你創建你自己的文件,並像其他操作系統一樣將它保存到磁盤。 ios可讓您訪問應用程序的「文檔」文件夾,並且每個文件夾都用於特定的內容,請閱讀文檔。

相關問題