我有兩個視圖控制器A和B. ViewControllerA上有一個UICollectionView。強制更新離屏UICollectionView
如果我將ViewControllerB推送到ViewControllerA,然後在後臺ViewControllerA的UICollectionView更新中,我想強制集合視圖重繪和取消它的單元格,以便當我從ViewControllerB返回時ViewControllerA的數據是最新且正確的。調用reloadData並不會使集合視圖重新繪製它自己,如果它在後臺,它將等待,直到在viewWillAppear之後觸發 [UICollectionView _createPreparedCellForItemAtIndexPath:withLayoutAttributes:applyAttributes]
,這是調用數據源以使新單元出列的方法。
無論如何強制或欺騙collectionview,以便它在調用viewWillAppear之前在新單元上調用[UICollectionView _createPreparedCellForItemAtIndexPath:withLayoutAttributes:applyAttributes]
?
我想獲得一個自定義的視圖控制器轉換工作,它看起來很奇怪,如果在查看ViewControllerB時數據已在ViewControllerA中更改。我想強制collectionView更新,所以當我調用CollectionView.visibileIndexPaths時,返回正確的項目,我的動畫看起來是正確的。
您可以使用委託來更新其他控制器的視圖。嘗試一下。 –