Я работал над этим приложением в течение нескольких дней, я работаю над созданием UICollectionView, чтобы он выглядел как сетка без промежутков между ячейками.Он работал фантастически после того, как я нашел этот ответ и внедрил его в свою собственную программу.Я работал над некоторыми другими файлами и обновлял свой компьютер, затем я вернулся и протестировал это приложение, просто чтобы увидеть, где я был, и по какой-то причине между ячейками есть горизонтальный интервал.Я рассмотрел несколько других вопросов, похожих на этот, но мне просто интересно, как это исправить и почему это произошло, когда я ничего не изменил, связанный с макетом.
Вот как это выглядит сейчас:
import UIKit
class ViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource {
@IBOutlet weak var collectionView: UICollectionView!
var model = BoardModel()
var board = Board()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
collectionView.delegate = self
collectionView.dataSource = self
board = model.newGame(4, 4)
// Remove the spacing between the cells in collectionView
// Also make the cells the correct size to form a square/rectangle
let screenSize: CGRect! = collectionView.bounds
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
layout.itemSize = CGSize(width: screenSize.width/CGFloat(board.columns), height: screenSize.width/CGFloat(board.columns))
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
collectionView!.collectionViewLayout = layout
// Center the collectionView
collectionView.contentInset.top = max((collectionView.frame.height - collectionView.contentSize.height) / 5, 0)
}
Причина, по которой я используюГраницы collectionView вместо UIScreen.mainScreen (). bounds объясняются тем, что мой collectionView имеет 20 интервалов по всем краям.