Ошибка при попытке использовать универсальный UITableViewCellIOS

Программируем под IOS
Ответить
Anonymous
 Ошибка при попытке использовать универсальный UITableViewCell

Сообщение Anonymous »

Я пытаюсь создать UITableView многократного использования. Я передам дженерики для элемента и UITableViewCell. Однако при попытке преобразовать ячейку в C возникает ошибка, и я не знаю, как еще это исправить.

Член «reusableLoadMoreTableView» нельзя использовать в значение типа
'any SharedLoadMoreTableViewDelegate'; рассмотрите возможность использования общего
вместо ограничения

protocol SharedLoadMoreTableViewDelegate
{
associatedtype T
associatedtype C: UITableViewCell

func reusableLoadMoreTableView(configure cell: C, for item: T)
}

class ReusableLoadMoreTableView: UIView, UITableViewDelegate, UITableViewDataSource
{
private let tableView = UITableView()
private var items: [T] = []

var delegate: (any SharedLoadMoreTableViewDelegate)?

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCell(withIdentifier:"CustomTableViewCell", for: indexPath) as! C

if indexPath.row < items.count
{
delegate?.reusableLoadMoreTableView(configure: cell, for: items[indexPath.row])
}

return cell
}

}


Подробнее здесь: https://stackoverflow.com/questions/791 ... leviewcell
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»