В настоящее время я пытаюсь использовать пользовательский интерфейс Firebase для заполнения UITableView пользовательской ячейкой. К сожалению, это оказалось сложно, и предыдущие предложенные исправления не работают.
Документация (https://github.com/firebase/FirebaseUI-iOS#using-storyboards-and-prototype-cells) демонстрирует это:
self.dataSource = FirebaseCollectionViewDataSource(ref: firebaseRef cellClass: YourCustomClass.self cellReuseIdentifier: @"<YOUR-REUSE-IDENTIFIER>" view: self.collectionView)
self.dataSource.populateCellWithBlock { (cell: YourCustomClass, obj: NSObject) -> Void in
// Populate cell as you see fit
cell.customView = customView;
}
self.collectionView.dataSource = self.dataSource;
Копирование этого и вставка моего собственного TableViewCellClass приводит к этой ошибке:
Невозможно преобразовать значение типа "(ManageTableViewCell, NSObject) -> Void" в ожидаемый тип аргумента "(UITableViewCell, NSObject) -> Void"
Затем я увидел ветку этой проблемы (https://github.com/firebase/FirebaseUI-iOS/issues/16), где один из сотрудников Firebase сказал, что принудительное приведение будет работать следующим образом:
self.dataSource.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
// Populate cell as you see fit, like as below
var customCell = cell as! CustomTableViewCell;
let snapshot = obj as! FDataSnapshot; // danger this can be null on deletion!
}
Однако это немедленно приводит к ошибке:
Невозможно преобразовать UITableViewCell в более необязательный тип ManageTableViewCell!
Есть ли у кого-нибудь предложения о том, как это сделать. Похоже, это распространенная проблема, не имеющая реального решения.
ManageTableViewCell
? Покажите нам, как именно выглядит ваш populateCellWithBlock. Предоставление нам примеров из документации не очень помогает - person FruitAddict   schedule 12.03.2016