1

最近、UITableView に並べ替えを組み込みましたが、セルを並べ替えた後に厄介なバグが発生しています。このバグは、セルが並べ替えられた後にのみ発生します。テーブル ビューを上にスクロールすると、画面の下部に表示されているセルが、スクロール中に消えてしまうことがあります。セルのアンロードが早すぎるようです。これは、上にスクロールするときにのみ発生します。下にスクロールすると、バグは存在しません。ランダムに消えるセルも、空のスペースが画面から出ると下にスクロールすると再表示されます。この問題のスクリーンショットは次のとおりです。

セルがランダムに消える

次の理由から、データ ソースに問題はないと確信しています。

  1. セルを並べ替えると、データ ソースも更新されます
  2. Spark Inspector でテーブル ビューを確認しましたが、欠落しているセルは単に非表示または空ではありませんが、存在しないだけで、空のスペースがあるセルはまったくありません。
  3. セルが再表示されるまでスクロールすると、セルがランダムに表示されたり消えたりします

UITableView のバグまたは問題に違いありませんが、その仮定も間違っている可能性があります。誰かがすでにこの問題に直面していて、今私を助けてくれるかもしれません;)私はあなたの答えを待っています:)



編集: - デリゲート メソッドをチェックしたところtableView:didEndDisplayingCell:forRowAtIndexPath:、セルがまだ画面に表示されていても、セルは実際に正常にアンロードされ、そのメソッドが呼び出されます!

編集 (2): テーブル ビューにヘッダー ビューがある場合にのみ問題が発生することがわかりました。デフォルトのヘッダーを使用するかカスタム ヘッダーを使用するかは問題ではありませんが、ヘッダー ビューを使用するたびにバグが発生します。ヘッダーを使用しない場合は、問題なく動作します。それは本当に奇妙です




注: iOS 6.1.2 でこれをテストしています。

4

0 に答える 0