2011-11-04 52 views
0

目前我正在研究一個查詢其中有多個表的數據庫的應用程序,一些表具有相互關聯的KeyFields。如何加快我的應用程序的加載時間

如果是這種情況,當我解析(或加載窗體緩存,我正在工作)與另一個數據集相關的數據集時,我想創建一個相關值的NSDictionary,其中keyvalue等於說等於選定的值keyvalue。

第一個問題是這是可能的。第二個問題在我嘗試這樣的事情之前,我需要考慮什麼。我在什麼時候執行(以前的任何指令)來創建此NSDictionary。

爲了給你一個更好的想法,我正在努力檢查這個流程圖,我對我的應用程序提出了邏輯。 enter image description here

我不知道如何使它變大..但如果你將它保存到desktp你會看到..按照MFG看看我想做什麼。

任何幫助將不勝感激。

+0

你能告訴我你用什麼工具製作流程圖嗎? –

+0

嘿,詹姆斯對於遲到的回覆感到抱歉,是週末,因爲我不想閃光,所以我在週末睡了很多時間。我使用這個非常酷的網站,用這種類型的流程圖和其他一些東西。它的名稱(https://www.lucidchart.com/)它的免費但是隻包含在你的每個圖表中的X個對象......但是也有一個相當便宜的基本版本,我使用了無限制的對象..(就在我頭頂)希望有所幫助。 –

回答

1

絕對有可能創建一個像你想的字典結構,但它可以非常迅速地變得非常複雜。另一種方法可能是使用自定義NSObject子類來管理數據和關係,然後可以根據需要構建一些行爲。

爲了確保您的應用程序能夠快速加載,請勿在加載根視圖控制器之後才加載此數據,因爲此方法需要儘快返回,因此係統監視程序不會以8badf00d需要長時間加載。

我建議將這些數據加載到後臺線程中,該線程啓動了您的第一個視圖控制器的方法-viewDidLoad:。確保它是一個後臺線程,而不是在主線程中,否則在加載過程中您的UI可能會被阻塞並且無響應。如果您使用後臺線程,則主線程上的用戶界面將在加載過程中保持空閒狀態,因此您還可以向用戶顯示進度條或活動指示器,以清楚表明您的應用程序正忙,但在此加載過程中不會凍結且無響應。

+0

好吧,很酷。非常感謝您的回覆。我明白你所說的所有事情,我會在做任何事情之前做更多的閱讀,只爲了安心,我做正確的事情。我認爲對我來說,主要的墊腳石是學習如何使用不同的線程(我明白他們只是沒有在ios開發中使用它們)迄今爲止,我只是一時興起編程:)當前我正在使用ASIHTTPRequest和NSXMLParser ,並且我將所有的UIActivityIndi​​cator內容放入瞭解析器DIDEndDocument中,這看起來工作正常。 –

相關問題