【发布时间】:2013-07-03 05:36:07
【问题描述】:
如果我选择一行并旋转设备,我的方向布局将完全不同。 我想跟踪上次选择的项目,我可以在新布局中旋转后重新做。
那么,理想情况下,我应该存储选定的 indexPath、选定的行号还是选定的模型对象在 dataSource 的每个单元格中表示?
我尝试存储选定的单元格,但重复使用时会产生问题。
【问题讨论】:
-
保存选中的IndexPath。如果您想跟踪多个单元格,可以在堆栈中跟踪它们,并根据需要推送和弹出。
-
所以你是说
[UITableView indexPathForSelectedRow]在设备旋转后不一样了? -
听起来你需要在旋转之前存储所选单元格的属性(足以在旋转后找到它),然后取消选择,重新加载等,然后重新选择。如果您在单元格中有模型对象,那么这将变得容易得多。 “M、V、C,就像 1、2、3 一样简单”。唱吧。
-
顺便说一句,看到了你的个人资料。您的“技能”数组指针是 NSMutableArray 的指针,但 @[] 文字语法将为您提供 immutableArray。只需添加对 mutableCopy 的调用!否则你将无法添加更多技能 :P :P 否则 .. 风格不错!
-
@AmoghTalpallikar 非常感谢 - 我会更新我的个人资料! :D
标签: ios objective-c uitableview