Я новичок в Xcode, поэтому прошу прощения, если я упустил что-то очевидное, но я застрял на этом в течение нескольких дней.
Я создал UICollectionView - представление коллекции в раскадровке
Есть ограничения в месте 0 с каждой стороны представления, а также одно ограничение для метки выше.Изображение и метка в ячейке также имеют ограничения.
когда я запускаю приложение, я получаю это - Запуск приложения
Я не уверен, как это возможноучитывая ограничения.Но если я удаляю какие-либо ограничения, редактирую существующие или удаляю их полностью, я просто получаю исключение SIGABRT.
Я очень запутался, если мой код компилируется и выполняется, я предполагаю, что код, заполняющий UICollectionView, работает.Есть ли что-то
TestVC.swift
import UIKit
class TestVC: UIViewController, UICollectionViewDelegate,UICollectionViewDataSource {
@IBOutlet weak var myCollection: UICollectionView!
// making this an empty array incase the data hasn't loaded yet.
private(set) public var testArrays = [dataArrays]()
override func viewDidLoad() {
super.viewDidLoad()
myCollection.dataSource = self
myCollection.delegate = self
}
func initData(category: Category){
testArrays = DataService.instance.testData(forCategoryTitle: category.title)
}
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return testArrays.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
if let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "collectionViewCell", for: indexPath) as? collectionViewCell{
let testArray = testArrays[indexPath.row]
cell.updateViews(testArray: testArray)
return cell
}
return collectionViewCell()
}
}
collectionViewCell.swift
import UIKit
class collectionViewCell: UICollectionViewCell {
@IBOutlet weak var cellImage: UIImageView!
@IBOutlet weak var cellLabel: UILabel!
func updateViews(dataarray: dataArrays) {
cellImage.image = UIImage(named: dataarray.imageName)
cellLabel.text = dataarray.title
}
}