UITableViewController:多个实例还是多个数据源?

时间:2011-08-23 10:45:23

标签: objective-c ios uitableview

我有一个UITableViewController,我有4种类型的表格数据以相同的格式呈现。每次我需要呈现数据时,使用一个UITableViewController并重新加载数据是否更好,还是应该使用自己的数据源创建四个UITableViewController实例?

我考虑的要点(我不确定是否属实):

  1. 我可以通过重用一个UITableViewController实例来节省资源。

  2. 但是,在呈现网格之前始终调用UITableView的reloadData可能会对性能产生影响。

  3. 在性能/内存消耗/最佳实践方面,最佳方法是什么?或者没有区别?希望我很清楚。

    更新:确切地说,我有一个带表的弹出控制器。我用它作为我的屏幕中各个字段的“选择屏幕”。

    需要弹出窗口的字段数是动态的,因此一个屏幕可以有4个,另一个屏幕可以有10个。困境是我应该创建多个选择弹出窗口的实例(每个字段一个),或者我应该只使用一个选择屏幕并重新加载每个字段的数据?

1 个答案:

答案 0 :(得分:0)

简答:

除非您的数据集很大(数千行),否则它并不重要。对你来说最简单的事情就好了!

答案很长:

对于每种数据类型,我会有一个不同的 - 如果你这样做,它可能会稍微提高响应性(正如你所指出的那样,这是以更多内存使用为代价的)。

但是,我会使用延迟实例化,即只在第一次要求时才创建它们。

如果我收到内存不足警告通知并且看不到它们,我也会释放它们。