2013-05-02 70 views
2

我有一個字典,其中包含列表中的每個項目。然後我有一個plist,用於保存列表中每個項目的用戶信息,包括項目是否已收集。然後我加載一個基於plist的信息的UITableView對照字典,只顯示用戶還沒有收集的項目。在編輯模式下重新載入UITableView

用戶可以點擊每一行並使用靜態按鈕導航到UIView頁面,其中包含該項目的信息以將該項目添加到完整列表。當按下按鈕時,程序將與用戶plist文件中的項目相關的「已完成」字段更改爲「是」,並且當用戶導航回UITableView時,通過調用viewDidAppear函數中的[self.tableView reloadData]來從列表中移除項目。

我也希望用戶能夠在UITableView中輸入「編輯模式」,並選擇多行添加到一起。我設法使用self.tableView.allowsMultipleSelectionDuringEditing = YES;NSArray *temp = self.tableView.indexPathsForSelectedRows;來正常工作,但是tableView不會刷新屏幕,直到用戶導航出頁面並再次返回。我曾嘗試在不同的功能中添加[self.tableView reloadData],但它們都不起作用。

在此先感謝您的幫助。

回答

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這可能是有幫助的。 讓我知道這是否適合你。

相關問題