Я видел решения, в которых необходимо создать все необходимые расширенные UITableViewCells до загрузки табличного представления, которое работает, когда у вас относительно небольшое количество строк.В этом случае ящики таблиц могут быть созданы до вызова reloadData, сохранены в массиве, а затем использованы, как требуется, в методе cellForRowAt вместо использования dequeueReusableCell
let cell = tableView.dequeueReusableCell(withIdentifier: "CustCell") as! CustomCell
Однако для моего приложения я не могу создать все требуемые табличные представленияячеек, так как это может быть 500 или более очень тяжелых ячеек, которые увеличивали бы использование памяти приложением.
Ячейки таблицы содержат WKWebview, который загружает веб-страницу, содержащую большое количество кода Javascript;загрузка не быстрая, и табличные представления будут генерировать ячейки так быстро, что они будут эффективно пытаться загружать данные в сети одновременно, так что существует высокая стоимость ЦП, которая может вызвать ошибки при загрузке.В идеале каждая из ячеек табличного представления должна быть последовательно подготовлена к использованию, а затем добавлена в табличное представление.
Мне нужно создать количество ячеек, которые этот UITableView должен видеть в любое время (плюс те, которые он использует заранее), и повторно использовать их через dequeueReusableCell по мере прокрутки пользователем.
МожетЯ могу предварительно создать ячейки, используя метод, описанный ниже, а затем повторно использовать эти ячейки в виде таблицы?т.е. я могу использовать dequeueReusableCell вне контекста метода cellForRowAt?
func setupCells () {
let cell = tableView.dequeueReusableCell(withIdentifier: "CustCell") as! CustomCell
cell.delegate = self
cellArray.append(cell)
}
Спасибо за любые идеи