Dikey veya yatay yönlerde hücreler arasında boşluk bırakmayan bir FlowLayout ile bir UICollectionView kurdum.UICollectionView 3 sütun ızgarası, 1 piksel alan ?? (image dahil)
Her şey çalışıyor, ancak 2. ve 3. sütun arasında tek bir 1px alanı var ve neden olduğunu bilmiyorum !? Hem iOS simülatöründe hem de gerçek bir cihazda 1px aralıklarını doğruladım. Bunu kimse yaşadı mı? Ben herhangi bir boşluğu kaldırmak için gerekli fonksiyonları hayata (ve onlar çalıştıran baskı ifadelere doğrulanmış) var
class MyViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout
yanı sıra görsel:
Benim UIViewController bir temsilci/şunlardan veri kaynağı olan hücrelerin onay birbirine sıraya:
Son olarakfunc collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int) -> UIEdgeInsets {
return UIEdgeInsetsZero
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}
, bir hücrenin genişliğini, basılmış olan iade edilen (her renk kare) buolduğunu doğrulamak içinveya (320/3)
, benzer durumlarda 106,666667
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
var totalHeight: CGFloat = (self.view.frame.width/3)
var totalWidth: CGFloat = (self.view.frame.width/3)
println(totalWidth) // this prints 106.666666667
return CGSizeMake(totalWidth, totalHeight)
}
Bunu çözmek için aşağıdakilerden daha iyi bir çözüm buldunuz mu? – BlueBoy
@BlueBoy Yapmadım. Gittiğim çözüm, iki sütunu bir tavanı veya zemini (genişlik/3) yapmak ve daha sonra üçüncü sütunu geri kalanına ayarlamaktır. – Alex
Sütunlardan sadece iki tane tavanı nasıl yaparsınız? – BlueBoy