我有一個UITableViewController管理iPad應用程序中的UITableView對象。表格視圖與其他對象的相當複雜的星座相關聯。我有一個問題,當我要求它重新加載一行如下:UITableView的reloadRowsAtIndexPaths:(NSArray *)indexPaths無法重新加載,除非您調用它兩次?
//indexPath is an NSIndexPath with indexes 0 and 0. At the moment, this is the only cell in the table view.
NSArray *array = [NSArray arrayWithObject:indexPath];
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone];
問題是行不重新加載。從來沒有回調cellForRowAtIndexPath。
瘋狂的事情是,如果我叫reloadRowsAtIndexPaths兩次,第二次通話不會觸發重裝:
//indexPath is an NSIndexPath with indexes 0 and 0. At the moment, this is the only cell in the table view.
NSArray *array = [NSArray arrayWithObject:indexPath];
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone]; // does not reload
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationNone]; // does reload
我想知道是否有人曾經遇到過這樣的錯誤,如果是這樣,究竟是什麼原因?
你在做一些後臺線程? – Daniel 2011-04-05 19:44:59
有一個測試用例嗎? – 2011-04-06 22:01:15
主線程。如果通過「測試案例」,你的意思是一個簡單的例子,說明同樣的事情,沒有我沒有,我希望我做到了。 – 2011-04-09 02:08:48