Заголовки в заголовке UICollectionView отображаются неправильно - PullRequest
0 голосов
/ 17 мая 2019

Я работаю с приложением Movie, и заголовки (категории фильмов) отображаются неправильно в заголовке UICollectionView. Вместо «Приключений» он показывает «Мультфильмы» во всех категориях. Что может быть не так в методе viewForSupplementaryElementOfKind?

Вот код:

struct MovieCategory {

    let title: String
    let img: String

}

class DataSet {

let categories = [MovieCategory(title: "Cartoons",     img:"coco1.jpg"),
                  MovieCategory(title: "Adventure", img: "lord.jpg"),
                  MovieCategory(title: "Drama", img: "titanic.jpg")]

}
func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {

            switch kind {
            case UICollectionElementKindSectionHeader:

                let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "HeaderCollection", for: indexPath) as! HeaderCollectionReusableView

                headerView.headerLebel.text = myData.categories[indexPath.row].title

                return headerView

            default: assert(false, "Error")

            }

        }

Вот несколько скриншотов: [1]: https://i.stack.imgur.com/oIy4w.jpg,[2]: https://i.stack.imgur.com/6XAOH.jpg

1 Ответ

0 голосов
/ 17 мая 2019

Вы передаете indexPath.row в каждом заголовке, что неверно.используйте indexPath.section вместо

headerView.headerLebel.text = myData.categories[indexPath.section].title
...