UITableView にデータを添付しようとしています。ここでプロジェクト フォームをダウンロードし、データが tableView に添付されているコードを使用しています: http://yannickloriot.com/2016/01/make-uitableview-reactive-with-rxswift/ :
まず、次の変数を作成しました。
let currentQuestion: Variable<Taxi?> = Variable(nil)
次に、次のことを試みます。
currentQuestion
.asObservable()
.bindTo(tableView.rx_itemsWithCellIdentifier("ChoiceCell", cellType: ChoiceCell.self)) { (row, element, cell) in
cell.choiceModel = element
}
.addDisposableTo(disposeBag)
しかし、次の警告が表示されます: 'Extra argument in call' on the line .bindTo
. 新しいセルを追加しようとしましたが、同じ結果が得られました。関係あるかわかりませんが、セル登録しました。
引数の型が一致しない場合にこの警告が表示される可能性があることをここで読みました: Swift - Extra Argument in call。ただし、引数はうまく一致しているようです。
私は Rx を初めて使用するので、誰かがここで何がうまくいかないのかを理解するのを手伝ってくれることを願っていました. ありがとう。
======
編集
これが私の新しいコードです。rx_itemsWithCellIdentifier("ChoiceCell")
私は一人で試しましたrx_itemsWithCellIdentifier("ChoiceCell", cellType: ChoiceCell.self)
:
let currentQuestion = Variable<[Taxi]>(taxis)
currentQuestion.asObservable()
.bindTo(tableView.rx_itemsWithCellIdentifier("ChoiceCell")) {(row, element, cell) in
cell.choiceModel = element
}.addDisposableTo(disposeBag)
私が利用した場所(タクシー)は、タクシーアイテムの配列です。下の図を参照してください。
また、.asObservable() を呼び出すと、次のようになります。
行を削除して、これらを印刷することができました.bindTo
。その行を追加すると、以前と同じエラーが発生します。
重要: 以前にリンクした記事のコード ベースをいじってみました。ChoiceCell から削除すると、同じエラーを再現できます。
// var choiceModel: ChoiceModel? {
// didSet {
// layoutCell()
// }
// }