2009-07-28 74 views
8

我已經分組了一排UITableView,並且我在一個按鈕的切換中進行了更多行的動畫處理。問題是,對於我使用的任何行動畫類型(頂部&底部),動畫看起來很可怕!下面是截圖中期動畫:分組的UITableView行動畫怪癖

Example http://files.michaelwaterfall.com/images/uitableview-animation.png

是否有一個原因,它看起來那麼糟糕嗎?或者做所有分組的桌面視圖動畫看這個令人震驚!

我認爲只有當一節中的第一行或最後一行正在動畫時,它纔會顯得很糟糕,所以我只是想知道是否有任何方法讓它看起來更好一些!否則,我想我只需要調用reloadData並讓它出現。

感謝您的幫助!

邁克爾

+0

我從來沒有動畫的問題,但我只使用了未分組的樣式。一旦我測試了一些東西,我會回答。 – TahoeWolverine 2009-07-28 18:01:29

+0

看起來你的圖片鏈接不再有效;想要將它上傳到imgur並重新鏈接它? – brandonscript 2016-03-07 17:46:54

回答

12

如果您同時刪除,添加和/或移動UITableView中的多個行,則必須用beginUpdatesendUpdates括起所有這些調用。否則結果是不確定的。

例如:

[tableView beginUpdates]; 
[tableView insertRowsAtIndexPaths:newRows 
        withAnimation:UITableViewRowAnimationTop]; 
[tableView deleteRowsAtIndexPaths:invalidRows: 
        withAnimation:UITableViewRowAnimationTop]; 
[tableView endUpdates]; 
0

我不確定到底是什麼看起來不好。從靜態圖片很難說。

不幸的是,你無法控制tableviews中的插入/刪除動畫。它全部由高層次的UITableView API處理。

唯一的另一種選擇是單獨和連續地執行動畫,看看看起來是否更好。我已經完成了這個工作來消除一些文物。

也嘗試不同的動畫,如淡入/淡出。不如浮華,但在某些情況下看起來更好。

0

我已經在分組表格視圖中使用了動畫,沒有任何問題,並且它看起來總是很棒。如何分享一些代碼?也許你在單元構建中做錯了什麼......或者雖然不太可能插入行。

+0

當然可以,我會盡快發佈一些代碼! – 2009-08-18 12:27:38

0

正如其他人所說,張貼一些代碼將有所幫助。

您是否已經在beginUpdates/endUpdates塊內執行多​​次插入/刪除操作?

0

以供將來參考,請參閱#6931544。我發現這些任意中間過渡線可以刪除以下內容: -

[self.tableView setSeparatorStyle:UITableViewCellSelectionStyleNone];