2012-04-16 53 views
1

我收到了一個應用程序UITTableView。此表是可更新的。並且在下次更新時,行數少於先前版本,我實現了UITableView's方法 - deleteRowsAtIndexPaths。deleteRowsAtIndexPaths without animation

我做了這種方式:

[table beginUpdates]; 
[table deleteRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationNone]; 
[table reloadRowsAtIndexPaths:indexPathsReload withRowAnimation:UITableViewRowAnimationNone]; 
[table endUpdates]; 

但是,當我實現這個代碼有動畫。這個動畫真的很糟糕。很多黑色的泄漏。但我確實在兩種方法中寫入了 - withRowAnimation:UITableViewRowAnimationNone:刪除和重新加載。

爲什麼?我如何重新加載和刪除沒有動畫的行?

回答

1

也許你嘗試在TableView中使用NSMutableArray(通過removeObjectAtIndex:indexPath.row刪除行)並使用[tableView reloadData]重新加載整個tableview?

+0

我不能這樣做,因爲我有第一個單元格,這是我不應該重新加載 – 2012-04-16 07:22:44

+0

設定手勢識別在cellforrowatIndex – developerdude 2012-04-17 07:03:44

2

通常,這樣做的方式是修改表的數據源,並在表上調用reloadData

+0

新的更多的時間 - 我不能這樣做,因爲我有第一個單元格,這我不應該加載 – 2012-04-16 07:31:06

+0

這對我來說沒有任何意義......表格視圖將重新顯示您的細胞......是您的第一個細胞特別沉重還是什麼? – borrrden 2012-04-16 07:41:27

+0

是的。第一個單元格中有手勢識別器。如果我重新加載表格,這個手勢將會死亡 – 2012-04-16 08:04:37

1

你可以嘗試讓說,「姿態」出表,然後嘗試重新加載表