let items = Variable<[Item]>([]) // 新しいデータで更新 self.items.value = updateItems
UITableViewにデータをBindingするには、rx_itemsWithCellIdentifierをコールする。
カスタムセルを使用する場合は、第二引数のcellTypeにセットが必要です。
viewModel?.items .asDriver() .drive(tableView.rx_itemsWithCellIdentifier("CustomTableViewCell",cellType: CustomTableViewCell.self)) { row, item, cell in cell.item = item cell.tag = row } .addDisposableTo(disposeBag)
セルの選択はrx_itemSelectedを使用します。
tableView.rx_itemSelected .subscribeNext { [unowned self](indexPath) in self.tableView.deselectRowAtIndexPath(indexPath, animated: true) // get cell let cell: CustomTableViewCell = self.tableView.cellForRowAtIndexPath(indexPath)! as! CustomTableViewCell } .addDisposableTo(disposeBag)
EditingStyleのセット
rx_itemsWithCellIdentifierを使用すると、DefaultでEditting可能になってしまいます。不要の場合はUITableViewCellEditingStyle.Noneをセットしましょう。
func tableView(tableView: UITableView, editingStyleForRowAtIndexPath: NSIndexPath) -> UITableViewCellEditingStyle { return UITableViewCellEditingStyle.None }
0 件のコメント:
コメントを投稿