2017-03-25 9 views
1

コレクションを使用してアイテムを削除しています。データソースからアイテムを削除してから、コレクションビューを再ロードしています。セルコレクションを削除すると、そのスクロール位置が調整されます。これはアニメーションなしで起こっています。私は、CollectionViewがアニメーションでスクロール位置を調整するようにしたい。どうやってするか ?CollectionViewはアニメーションでスクロールポストを調整する必要があります。

+0

コレクションビューをリロードしないでください。 'deleteItems(at:)'を呼び出してください – Paulw11

+0

あなたのセルをどのように削除しますか?削除したコードを共有できますか?削除後にコレクションビューをリロードする必要はありません。 –

答えて

0

あなたはそのコードにコードスニペット後

func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { 
self.images.removeObject(at: indexPath.item) 
       self.collectionView.reloadData() 
} 
+0

同じコードを使用していますが、アニメーションが機能しません。 –

0
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { 

self.collectionView.scrollToItem(at: IndexPath, atScrollPosition: .centeredHorizontally, animated: true) 
} 
+1

このコードスニペットは問題を解決するかもしれませんが、[説明を含む](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)は本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。 – DimaSan

+0

あなたは正しいです –

0

を試してみてください、あなた

が現在のindexPathを取得し、コードの下から行を削除するに役立つかもしれ

yourCollectionView.deleteItems(at: [indexPath!]) 
あなたの問題を解決することがあります

:リロードする必要はありませんCollectionView

関連する問題