用于UITableView的iOS5详细信息UIViewController应该为每个选定的行重置还是重新分配?

时间:2011-11-12 04:22:42

标签: iphone objective-c uitableview uiviewcontroller ios5

为表行创建详细视图控制器的首选方法是什么?假设我有一个总共有100行的UITableView。每行都可以显示详细视图控制器。 我应该为所选的每一行重新分配一个新的详细视图控制器,还是可以使用某种重置方法重新使用现有的?

现在我的代码中有两个选项: 对于侧面滑动,我使用短淡化动画重置同一个控制器。

对于Core Data UITableView,我为每一行分配一个新的控制器。

我是否应该在选择行时尝试重置UITableView的详细控制器,或者这是一种不好的做法?

更新: 我最终为所选的每个表行分配了控制器。在控制器中,我添加了2个带有快进和倒退图标的额外按钮。这些允许用户逐个遍历表数据,查看所有细节。我发现回到桌子上选择一行接一行是太乏味了。 额外按钮为下一个/上一个事件重置控制器。由于我只使用一个控制器,因此无法使用Core Animation执行视图转换。相反,我缩放控制器上的按钮以指示已经发生了“快进”的事情。

谢谢你!

1 个答案:

答案 0 :(得分:1)

我认为你的问题的答案取决于许多因素,但你的代码中目前存在两种选择肯定是一件非常好的事情。这使您有机会运行乐器并执行a bit of memory profilingallocation tracking

我这样做的方法是检查打开一个细节视图控制器然后实例化10,20甚至所有100个细节视图控制器之间的内存差异。

如果内存占用量急剧增加,我可能倾向于执行“重置详细信息视图”路径。

如果创建的每个细节视图的内存实际上只有少量增加(并且不必重置每个表行选择的所有内容,那么我就会走这条路。