11

アプリでこのエラーが発生します:

*** -[UICollectionView _endItemAnimations]、/ SourceCache / UIKit / UIKit-2372 / UICollectionView.m:2801でのアサーションの失敗

これは、この行の私の-controllerDidChangeContent:メソッドで発生します。

[self.collectionView performBatchUpdates:^{...}];

誰かがこれを引き起こす原因を知っていますか?私のコードはhttps://gist.github.com/4440c1cba83318e276bbに密接に基づいており、途方に暮れています。

ありがとう!

4

3 に答える 3

1

きっとそれはあなたの

-controllerDidChangeContent

はバックグラウンド スレッドで複数回呼び出されており、別のスレッドが呼び出したときに performBatchUpdates がまだ機能しているため、正しくない動作につながります。

解決策 - @synchronized でラップするか、NSLocks を使用してみてください

于 2012-12-07T20:08:19.073 に答える
1

この問題は、ビュー didDisappear で FRC デリゲートを nil に設定していませんでした。

于 2012-12-08T00:32:20.053 に答える