2011-09-08 96 views
0

我有一個應用程序3視圖和2類,每個負責解析消息和連接到服務器。同一類在不同的意見

事情是,我需要在所有三個視圖中使用解析器(以及連接) 但我認爲在所有視圖中包含並初始化這兩個視圖的實例可能不是正確的性能明智,我是對的?

這是不正確的,我應該怎麼做? 我正在考慮在appDelegate中創建它們的實例,但我不知道如何使用實例的方法來執行它。

在此先感謝

回答

0

傳遞迴AppDelegate中是可能的,但沒有真正面向對象是什麼呢?很快,您將使用它在更大的應用程序中的視圖控制器之間傳回數據。

更好的方法來做到這一點,與在Core Data程序中傳遞託管對象上下文的方式類似,可以在視圖控制器中創建一個屬性來保存解析器。在一個位置創建此解析器,創建新的視圖控制器後,將該屬性設置爲指向您的解析器。這樣,你只是通過一個實例,並以更受控制的方式傳遞。

+0

好吧,我想我明白了,但我對Core Data還不熟悉,但我會研究如何按照你說的方式來做,謝謝。 – Erakk

+0

我懂了!謝謝! – Erakk

-1

這將是在這種情況下,最好在的appDelegate創建它。該的appDelegate可以在任何地方在代碼中達成如下:

MyAppDelegate *delegate=(MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[delegate parse:data]; 
+0

好吧,我認爲它的竅門。例如,我的Connection有方法驗證:Connection在我的appDelegate中被初始化。 如果我想調用方法authenticate:在我的第三個視圖中,我應該怎麼做? [appdelegate authenticate:data]給了我一個關於響應的警告.. – Erakk