我目前正在使用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