我有一个UICollectionView,其中填充了设备照片库中的所有照片。点击一个单元格(照片)后,它会转移到允许编辑的视图控制器。在这个观点上,有一个"添加照片"按钮将用户返回到UICollectionView(以选择另一张照片)。我需要将滚动位置设置为"焦点"视图中心的前一个抽头单元格,没有任何动画或跳跃。
我尝试将tapped indexPath保存为变量,然后在viewDidAppear上,使用scrollToItemAtIndexPath滚动到该indexPath。问题是我无法弄清楚如何在单元格点击上更新变量(以保存indexPath)。我在didSelectItemAtIndexPath中尝试了这个,但是值实际上从未保存过。
var cellTappedIndexPath = Int()
在didSelectItemAtIndexPath里面:
cellTappedIndexPath = indexPath.row
cellTappedIndexPath的值永远不会保存。
为了测试scrollToItemAtIndexPath,我已将以下内容添加到viewDidAppear:
customViewCollectionView.scrollToItemAtIndexPath(NSIndexPath(forItem: 25, inSection: 0), atScrollPosition: UICollectionViewScrollPosition.CenteredVertically, animated: false)
// 25 is just a number I have set for testing. Ultimately, I would like this to be the saved indexPath of the last tapped cell.
这会导致collectionView跳转到#34;一旦它满载就到单元格25。如果我将动画设置为true,则会在顶部加载,然后向下滚动到单元格25.不是我想要的结果。
我只想在这里做两件事。 1 - 将单击的单元格保存为变量。 2 - 使用scrollToItemAtIndexPath(#1中的变量),这样视图就会立即加载,最后一个单元格直接进入中间,没有动画或任何东西。
如果需要进一步澄清,请与我们联系。谢谢!
答案 0 :(得分:0)
您可以在点按RewriteEngine On
RewriteRule ^directory/?$ /directory/page/
单元格时保存所选的indexPath
,并在需要时使用。
collectionview