我想让这个动画将单元格扩展为全屏。我并不完全明白自己做错了什么。它扩展了单元格而不是全屏
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let item = collectionView.cellForItem(at: indexPath) as! CustomViewCell
let screensize = UIScreen.main.bounds.size
UIView.animate(withDuration: 1.0,delay: 0,
usingSpringWithDamping: 0.5,
initialSpringVelocity: 6.0, animations: {() -> Void in
item.center.x = self.view.center.x
item.center.y = self.view.center.y
item.transform = CGAffineTransform(scaleX: screensize.width/item.frame.size.width, y: screensize.height/item.frame.size.height)
答案 0 :(得分:0)
您的集合视图单元格与view
。
这意味着,当您商品的位置位于view.center
时,它可能不会显示在视图的中心。
您需要将view.center
从视图的坐标系转换为集合视图的坐标系,或者转换为您单元格的超级视图。
let point = view.convert(view.center, to: collectionView)
item.center.x = point.x
item.center.y = point.y