Хей-хо,

У меня есть небольшая проблема с двумя из моих контроллеров представления. Они оба контроллеры представления коллекции.

Моя проблема в том, что если я нажимаю на кнопку, чтобы открыть второй вид, он запаздывает, и переход не является жидким. Причиной этой задержки является набор данных, загружаемых представлением для представления коллекции (около 400 фотографий и строк).

Может быть, кто-то из вас понял, как я могу победить это торможение загрузки. Если вам нужно больше информации -> просто спросите.

1
Paul Heinemeyer 29 Май 2017 в 02:36

2 ответа

Лучший ответ

Простой способ исправить это - загрузить данные в фоновом потоке и перезагрузить представление коллекции (в потоке пользовательского интерфейса), когда это будет сделано:

DispatchQueue.global(qos: .background).async {

    // load your data here

    DispatchQueue.main.async {
        // reload your collection view here:
        self.collectionView.reloadData()
    }
}
2
Remy Cilia 29 Май 2017 в 00:32

Вы можете использовать этот метод для достижения требуемого результата.

override func viewDidLayoutSubviews() {
    // Configure the views 
}

С другой стороны, у вас есть self.view.setNeedsLayout() и self.view.layoutIfNeeded(). Найдите тот, который подходит вам.

0
Praveen Kumar 29 Май 2017 в 12:25