所以看起来“didselectitem”代码中的某些内容会在第一次选择单元格时被调用,但其他内容在第二次单击之前不会更新。
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let cellSize = collectionView.cellForItem(at: indexPath)?.frame.size
popup.frame.size = cellSize!
popupWordLabel.text = itemsArray[indexPath.row].word
popupNumberLabel.text = itemsArray[indexPath.row].number
popupDescriptionLabel.text = itemsArray[indexPath.row].descriptor
popupCenterConstraint.constant = 0
print("\(indexPath)")
我正在搞乱看看实际上有什么用,设置popupCenterconstraint就可以在第一次点击时工作,就像打印indexPath一样。但是,除非我再次单击该单元格,否则更新弹出框架大小不会更新。尝试使用cgaffinetransform等动画弹出框架时也会发生同样的事情。
popup是一个UIView,以屏幕上设置的中心约束开始。