我目前正在使用UITabBars
內部使用UINavigationController
的應用程序。標籤欄對應於UITableViews
以及地圖視圖。但是,該應用程序的根視圖控制器不是UITableView
自定義控制器和地圖視圖控制器的父級或直接父級。我也有一個創建NSDictionary
對象的p列表;它是我用來填充表格和地圖中的條目的數據源。在沒有共享根視圖控制器的情況下在多個視圖之間保持數據源
因此,如果沒有根視圖控制器,我應該如何從數據源創建NSDictionary
對象?在我看來,最簡單的方法是簡單地在每個視圖控制器中重新創建需要數據的視圖中的對象。因爲我沒有那麼多的觀點,而且P列表並沒有那麼長,所以記憶不應該成爲問題。但是,我知道這是非常低效的。
是否有任何替代實現,以便我不必在每個視圖控制器中重新創建NSDictionary
?
本教程整齊擔綱單導說明了一切: http://www.cocoanetics.com/2009/05/the-death-of-global-variables/
我唯一擔心的是,現在如果有多個視圖控制器每個呼叫的單身,也不會都成爲NSDictionary
的產生多個實例,並且難以想象地仍然佔用大量內存?
好吧,那麼通過屬性列表爲每個視圖控制器提供相同數據模型的實例會不好嗎? p-list本身從不被應用程序本身修改。這只是我的程序的大綱如下:| 程序的應用程序委託 - >根視圖控制器 - >標籤欄控制器 - >導航控制器 - >自定義表格視圖控制器 |因此,如果我將數據模型的邏輯放在應用程序委託中,我不確定它將如何「到達」自定義Table View控制器。所以這就是爲什麼我在每個t.v中創建數據模型/ p列表的副本。控制器。 – 2010-12-02 23:03:18
我想我問的是,我的做法是否有缺陷,如果有的話,糾正它的最好方法是什麼?單身? – 2010-12-02 23:25:20