との区分のUITableViewレンダリンググリッチ次のメソッドを使用してUITableViewセクションの上部に表示されます(下のコードを参照)。このグリッチとは別に、すべてが美しく動作します。セクションの上部に挿入された行は、左上と右上に丸みのあるコーナーがレンダリングされます。問題は、下の行は視覚的に更新されていないということです。つまり、2番目の行/セルには角が丸められていますが、2番目のセクションの上に新しい行を挿入するアニメーションの後には、上隅に2乗する必要があります。please see this screen grab for clarification発生した。更新されていないセルのコーナーを参照してください。iPhone:私は私がいるこののUITableViewの問題の解決策を探してくださいする場所へと立ち往生ビットだとしてあなたが役立つことを願っinsertRowsAtIndexPaths
// Amend the data source before updating the view to reflect the changes
[[self.playerData objectAtIndex: 0] removeObjectAtIndex: row];
[[self.playerData objectAtIndex: 1] insertObject:playerName atIndex:0];
// Amend the view to reflect changes
NSArray *deleteIndexPaths = [NSArray arrayWithObjects:
[NSIndexPath indexPathForRow:row inSection:0],
nil];
NSArray *insertIndexPaths = [NSArray arrayWithObjects:
[NSIndexPath indexPathForRow:0 inSection:1],
nil];
[self.playerTableView beginUpdates];
[self.playerTableView insertRowsAtIndexPaths:insertIndexPaths withRowAnimation: UITableViewRowAnimationLeft];
[self.playerTableView deleteRowsAtIndexPaths:deleteIndexPaths withRowAnimation: UITableViewRowAnimationLeft];
[self.playerTableView endUpdates];
もちろん、メッセージを送信したばかりの場合:[self.playerTableView reloadData];ビューが正しく表示されます。しかし、我々は本当に滑らかな経験を提供するためにアニメーション化するために、この手順が本当に必要です。たぶん、挿入アニメーションの完了時に発生した委任イベントがあった場合、グリッドを取り除くためにデータソースからビューを更新できますが、このようなフックは見つかりませんでした。
ご協力いただければ幸いです。