我尝试实现旋转调整,因此教程作者在设置新首选项之前使用了invalidatelayout函数。但实际上所有的工作都没有invalidateLayout,但我在之前的另一种环境中尝试过它并得到相同的#34;没有"输出
override func willTransition(to newCollection: UITraitCollection, with coordinator: UIViewControllerTransitionCoordinator) {
collectionView.collectionViewLayout.invalidateLayout()
let indexPath = IndexPath(item: pageControl.currentPage, section: 0)
//scroll to indexPath after the rotation is going
DispatchQueue.main.async {
self.collectionView.scrollToItem(at: indexPath, at: .centeredHorizontally, animated: true)
self.collectionView.reloadData()
}
}
那么为什么我们需要invalidateLayout? (我读了文档,但似乎这个功能有点......似乎什么都不做......我不知道......可能多余?)