各セルのテキスト量に応じて異なるサイズのセルで水平UICollectionViewを作成しようとしています。私は以下のコードでこれを達成することができましたが、今では自分のセル間に余分なスペースができています。私のminimumLineSpacingForSectionAtはすでに0を返しています。私は負の数値を返そうとしましたが、どちらもうまくいきません。誰かが余分なスペースが起こっている理由とそれを取り除く方法を知っていますか?UICollectionViewサイズの変数を使用してCGSizeを返すと、セル間に不必要な余分なスペースが発生する
ちょうど参考のために、私のセルの中には、セルの完全な大きさに制約された1つのUILabelがあります。
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
var stringWidth: CGFloat = 100
//Finding and setting feedMenuCellWidth
if let groupName = groups[indexPath.item].name {
var originalString: String = groupName
let myString: NSString = originalString as NSString
let size: CGSize = myString.size(attributes: [NSFontAttributeName: UIFont.systemFont(ofSize: 17.0)])
stringWidth = size.width
}
//Returning CGSize
return CGSize(width: stringWidth + 20, height: frame.height) // with standard width
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return 0
}