UITableView方法"deleteRowsAtIndexPaths:withRowAnimation:"有什么作用?

Cor*_*oyd 1 iphone cocoa-touch uikit

********更新问题**********

如果tableview不影响模型:屏幕单元格的索引路径是否已更改以反映其实际位置,或者在调用reloadData之前,已删除单元格的索引是否不可见?

*******原始问题**********

我知道它标记了要删除的细胞并为删除动画,但它对模型有什么作用?

它是否会影响模型(我无法想象它会如何)?

细胞"仍在那里"但是看不见吗?

当用户开始滚动时,是否会跳过已删除索引的委托调用?

它是否希望您更新模型?

到目前为止,我所读到的内容似乎含糊不清......

Jor*_*dan 5

  • (void)deleteRowsAtIndexPaths:(NSArray*)indexPaths withRowAnimation:(UITableViewRowAnimation)动画;

从tableView中删除一行.它根本不会修改您的模型.你必须自己做.单元格将被删除,但如果在从模型中删除行之前调用reloadData.细胞将重新出现.

所以,是的,它希望您更新您的模型.

  • 使用-insert或-delete方法后,无需调用-reloadData.这些将适当地更新表视图自己的行列表.就索引而言,表视图将询问您在特定索引路径中的项目是什么,因此完全取决于您更改模型,以便在表视图请求新行时,您提供正确的行. (4认同)