我有一段代碼,看起來像這樣:獲取tableview的insertRowsAtIndexPaths來接受indexOfObject?
[tableView beginUpdates];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationLeft];
[tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:[array indexOfObject:[array objectAtIndex:indexPath.row]]] withRowAnimation:UITableViewRowAnimationLeft];
[tableView endUpdates];
[tableView reloadData];
當用戶點擊附件它得到執行。第一部分只是爲了提供一個流暢的動畫,並不重要,因爲tableView在幾毫秒後重新加載,但正如我所說的,它提供了一個動畫。
它應該將所選對象從其當前indexPath移動到同一indexPath處的數組中的值。
顯然,這段代碼不起作用,所以我只想知道可以做些什麼來修復它? PS:我也在編譯時得到一個警告。通常的「傳遞的參數1‘arrayWithObject:’時將整數指針不進行強制轉換......」(3號線)
結束了這個片段:
[tableView beginUpdates];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationLeft];
[tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:[array indexOfObject:[arraySubFarts objectAtIndex:indexPath.row]] inSection:0]] withRowAnimation:UITableViewRowAnimationFade];
[tableView endUpdates];
[tableView reloadData];
爲什麼我這樣做的原因是因爲新的指數是在一個陣列的當前indexPath。 (如果indexPath爲2,則數組中的值2可能爲20)。 – Emil 2010-04-30 20:58:09
啊,好吧。你發佈的代碼是在索引2處抓取對象,在索引2處查找對象的索引,並用該對象創建一個數組。我在上面添加了更多的代碼,可能會更接近您的需求。 – MrHen 2010-04-30 21:11:41
看到更新後的第一篇文章,我修好了:) – Emil 2010-05-01 07:49:49