在编辑模式下重新加载UITableView

时间:2013-05-02 01:23:04

标签: uitableview reloaddata editmode

我有一个字典,用于保存列表中的每个项目。然后我有一个plist,其中包含列表中每个项目的用户信息,包括是否已收集项目。然后我加载一个UITableView,其中包含基于针对字典的plist的信息,仅显示用户仍未收集的项目。

用户可以点击每一行并导航到UIView页面,其中包含项目信息,并带有静态按钮,以将项目添加到已完成列表中。当按下该按钮时,程序将与用户plist文件中的项目相关的“已完成”字段更改为“是”,当用户导航回UITableView时,通过调用[self.tableView reloadData]将该项目从列表中删除viewDidAppear函数。

我还希望用户能够在UITableView中输入“编辑模式”,并选择一次添加多行。我已经设法使用self.tableView.allowsMultipleSelectionDuringEditing = YES;NSArray *temp = self.tableView.indexPathsForSelectedRows;使函数正常工作,但tableView不会刷新屏幕,直到用户导出页面并再次返回。我尝试在不同的函数中添加[self.tableView reloadData],但它们都不起作用。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我想不出为什么reloadData不起作用的原因,但IMO你应该尝试

- (void)deleteRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation: (UITableViewRowAnimation)animation 

而不是reloadData(如果你还没有) 同样http://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/TableView_iPhone/ManageInsertDeleteRow/ManageInsertDeleteRow.html#//apple_ref/doc/uid/TP40007451-CH10-SW9这可能会有所帮助。 如果这对您有用,请告诉我。