UICollectionViewのスワイプ時に、cellのindexPathを利用したいのですが、indexpath.rowが何故かズレてしまいます。
UIViewController上にUICollectionViewを同じサイズで配置し、その上に同じサイズでcellを乗せています。
cell上にUILabelを配置し、
cellForItemAt内で、
print(indexPath.row)
と
label.text = String(indexPath.row)
とだけ記述してシミュレータで実験したところ、
起動時にはデバックに 「0」が表示されます。
その後、cellを1ページスワイプすると、なぜかデバックに、
「1」
「2」
と 表示されます。
cellが1ページのスワイプで2度呼び出されているということなのでしょうが、原因がわかりません。
また、その後のスワイプでは、1ページのスワイプごとに1ずつ出力されます。
その後、逆にページをスワイプすると「4」から、いきなり「1」に戻るといった現象もあります。
cellが一度しか呼ばれていないはずなのに、いきなり数字が飛ぶのはなぜなのでしょうか?
ちなみに、cell上に配置したラベルは1ページごとに1ずつ加算され、逆スワイプでもきちんと1ずつ減算されます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/11 23:37
2017/06/11 23:43
2017/06/11 23:52
2017/06/11 23:54 編集
2017/06/12 00:07