Ошибка с UICollectionViewCells при использовании с Tabman / Pageboy - PullRequest
0 голосов
/ 21 октября 2019

Я использую Tabman для отображения экрана «Фильтр результатов». На каждой вкладке у меня будет представление «Коллекция», содержащее выбор фильтра.

Первая вкладка работает отлично, но для всех остальных вкладок происходит следующее:

При переходе на вкладку дляВпервые вид коллекции выглядит следующим образом.

Second Tab

Когда вы уходите от вкладки и затем возвращаетесь к ней, представление «Коллекция» фиксируется само по себе.

First Tab

Я пытался решить эту опцию, вызывая invalidateLayout () в определенных точках моего кода. Я также выделил collectionView оранжевым цветом. Как вы можете видеть, рамка для collectionView в порядке на каждой вкладке, поэтому я предполагаю, что это как-то связано с CollectionViewLayout, а что-то не обновляется?

filterType - это просто View Controller, содержащий один UICollectionView

class FilterViewController: TabmanViewController {

    var filterTitles = ["Gender", "Type", "Color", "Brand", "Price"]

    var vc1 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filterType")
    var vc2 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filterType")
    var vc3 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filterType")
    var vc4 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filterType")
    var vc5 = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filterType")

    override func viewDidLoad() {
        super.viewDidLoad()
        viewControllers = [vc1, vc2, vc3, vc4, vc5]
}
...