Это второй раз, когда я имел дело с представлениями коллекции, и я не могу заставить свои ячейки отображаться на экране. Я пробовал десятки разных способов, таких как регистрация своих ячеек, но я все еще не могу заставить свои ячейки отображаться, и я получаю ошибку: «Поток 1: сигнал SIGABRT» Я имел дело с такой ошибкой раньше, но на этот раз я не мог понять точно, что я сделал не так. Может кто-нибудь, пожалуйста, помогите мне? Любые ответы будут с благодарностью.
Завершение работы приложения из-за необработанного исключения «NSInternalInconsistencyException», причина: «Не удалось загрузить NIB в комплекте:« NSBundle
»
Вот код контроллера моего представления, если он вам нужен:
import Foundation
import UIKit
class HomeViewController: UIViewController{
override func viewDidLoad(){
super.viewDidLoad()
}
var eventTitle = ""
var dueDate = ""
var datePosted = ""
var eventDescription = ""
@IBOutlet weak var viewAllThingsToDo: UIButton!
@IBOutlet weak var viewAllGetItDone: UIButton!
@IBAction func viewAllThingsToDoAction(_ sender: Any) {
func TtdButtonPressed (dueDate: Date, title: String, datePosted: Date, Description: String?) {
}
}
@IBOutlet weak var GIDCollectionView: ThingsToDoCollectionView!
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "homeToDetailedEvents" {
let destVc = segue.destination as! DetailedEventsViewController
destVc.eventTitle = eventTitle
destVc.dueDate = dueDate
destVc.datePosted = datePosted
destVc.eventDescription = eventDescription
}
}
@IBAction func viewAllGetItDoneAction(_ sender: Any) {
}
}
extension HomeViewController: UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 1
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ThingsToDoCollectionViewCell", for: indexPath)
if let myCVC = cell as? ThingsToDoCollectionViewCell {
if myCVC.GIDTitle != nil {
myCVC.GIDTitle?.text = "Title"
print("1Contains a value!")
} else {
print("1Doesn’t contain a value.")
}
if myCVC.GIDDueDate != nil {
myCVC.GIDDueDate?.text = "June 17"
print("2Contains a value!")
} else {
print("2Doesn’t contain a value.")
}
if myCVC.GIDThumbnail != nil {
myCVC.GIDThumbnail?.image = UIImage(named: "IMG_7070")
print("3Contains a value!")
} else {
print("3Doesn’t contain a value.")
}
}
return cell
}
func numberOfSections(in collectionView: UICollectionView) -> Int {
return 1
}
}
extension HomeViewController: UICollectionViewDelegate {
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
print(indexPath)
}
}
А вот код для моей ячейки просмотра коллекции:
import UIKit
class ThingsToDoCollectionViewCell: UICollectionViewCell {
@IBOutlet weak var GIDThumbnail: UIImageView!
@IBOutlet weak var GIDTitle: UILabel!
@IBOutlet weak var GIDDueDate: UILabel!
override var isSelected: Bool {
didSet {
layer.borderWidth = isSelected ? 1.0 : 0.0
}
}
}