在 Xcode 中,我创建了一个 UICollectionView 并将一些标签拖到 UICollectionViewCell
中。问题是,当更换设备时,单元不会将其尺寸调整为屏幕尺寸。所以我实现了以下代码:
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
let layout = collectionView.collectionViewLayout as! UICollectionViewFlowLayout
layout.sectionInset = UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)
return CGSize(width: self.collectionView.frame.width * 0.9, height:self.collectionView.frame.height *0.8)
}
此后,我注意到单元格的大小确实发生了变化。然而,单元格内标签的宽度和高度保持不变。
我不知道如何解决这个问题。
预先感谢您的帮助!!
最佳答案
设置标签的约束,
喜欢,
或者您也可以使用 UI 属性 autoresizingMask
喜欢,
yourLbl.autoresizingMask = [.flexibleWidth, .flexibleHeight]
关于ios - 单元格大小更改后,如何自动调整 CollectionViewCell 中内容的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41089428/