Ячейки представления коллекции не загружаются - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть представление коллекции, вложенное в табличное представление. Ячейки представления коллекции не загружаются. Я не могу установить delgate и dataSource представления коллекции в функции инициализации tableViewCell, потому что она разворачивается как nil, поэтому я создал функцию загрузки, которая вызывается для ее установки при загрузке ячейки. У меня сейчас проблема в том, что функции dataSource / delgate не вызываются, а ячейка табличного представления не загружается. Моя ячейка просмотра коллекции на данный момент является просто изображением, поэтому я не включил его. Кроме того, я проверил, что все эти выходы подключены правильно, и ячейка табличного представления и ячейка представления коллекции имеют идентификаторы повторного использования, установленные через конструктор интерфейса. Вот мой код:

Контроллер представления:

@IBOutlet weak var libraryTableView: UITableView!

override func viewDidLoad() {
    super.viewDidLoad()
    self.libraryTableView.dataSource = self
    self.libraryTableView.delegate = self


    // Do any additional setup after loading the view.
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 1
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    guard let cell = tableView.dequeueReusableCell(withIdentifier: "LibraryTableViewCell", for: indexPath) as? LibraryTableViewCell else {
        return LibraryTableViewCell()
    }
    cell.load()
    return cell
}

Ячейка табличного представления:

@IBOutlet weak var carouselLabel: UILabel!
@IBOutlet weak var carousel: UICollectionView!

func load() {
    layer.backgroundColor = UIColor.clear.cgColor
    carouselLabel.text = "hello world"

    carousel.delegate = self
    carousel.dataSource = self
    //carousel.reloadData()
}

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return 1
}

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "packCell", for: indexPath) as? PackCollectionViewCell else {
        return PackCollectionViewCell()
    }
    return cell
}
...