Как сделать так, чтобы UICollectionView выглядел как прокрутка в Instagram Stories Preview - PullRequest
0 голосов
/ 25 декабря 2018

Извините за вопрос новичка, но по прошествии многих часов я не могу понять, как правильно расположить collectionViewCells, чтобы он выглядел как страница instagram с клипами-историями вверху.

В настоящее время это лучшее, что у меня есть сcollectionView (не работает) и tableView (работает): enter image description here

Однако есть несколько проблем.Прежде всего, обратите внимание, что верхняя панель, которая является панелью collectionView, не находится на одном уровне слева с элементами tableView под ней.

Мой код для этого:

extension ChatTableViewController : UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout {

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

    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "profileClipView", for: indexPath) as! ProfileClipViewCell
        cell.nameLabel.text = "text"
        cell.imageCell.image = UIImage(named: "temp_me")
        return cell
    }

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {

        let side = self.collectionView.bounds.size.height - 16

        return CGSize(width: side - 10, height: side)
    }


    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {

        return UIEdgeInsets.init(top: 8, left: 8, bottom: 8, right: 8)
    }

}

Понятноэто расстояние больше 8 пикселей, поэтому мое фундаментальное понимание вставок должно быть неверным.Кроме того, я заметил, что нет способа установить UICollectionViewDelegateFlowLayout в коде, я предполагаю, что он устанавливается, когда я задаю делегат / источник данных collectionView.

Другая проблема, с которой я сталкиваюсь, заключается в том, что текст под фотографияминикогда не появляется.Я создал xib, который выглядит следующим образом:

enter image description here

ImageView имеет размер 1: 1 и обрезан сверху и по бокам, нижний черный ящик представляет собойlableView, который обрезается по изображению и снизу и центрируется по внешнему виду.Обратите внимание, что этот ярлык не появляется!

Так что в конечном итоге я задаюсь вопросом, как привести ячейки вровень с краями, и удивляюсь, почему ярлык не появляется.Ценю помощь безмерно!

...