2017-02-17 40 views
5

Gözlemlenebilir bir UIPickerView bağlamak için bir yolu var mı? Bir UITableView Örneğin BenRxSwift ve UIPickerView

yapacağını: UIPickerView için benzer bir şey

myObservableArray.bindTo(tableView.rx.items(cellIdentifier: "Identifier", cellType: MyCustomTableViewCell.self)) { (row, title, cell) in 
     cell.textLabel?.text = title 
    } 
    .disposed(by: disposeBag) 

var mı?

+0

. UITableView' için kullanılan kodun UIPickerView' için benzer bir şeye gelmesi için kullanılan koda bakabiliriz, ancak bunun nasıl çalıştığına dair bir kavrayış elde etmek için RxSwift ile oldukça iyi bir deneyime ihtiyacınız olacaktır (en azından, ** I * * denediniz ve başarısız oldunuz) – tomahh

+1

Lütfen bu cevaba bir göz atın: https://stackoverflow.com/a/46225009/1953178 –

cevap

0
senin seçicinin

Sağlanan veri kaynağı şuna benzer:

let pickerDataSource: [[String]] = [ ["asdadadad", "sffgddfg"], 
            ["sfsdasgag", "sdfasdfasfsf", "sdsfgagagaggs"] ] 
Eğer bu şekilde ihtiyaç 'bağlayıcı' uygulayabileceği

: kutunun dışında kullanılabilir hiçbir şey RxSwift en deposundan yoktur

pickerView.rx.itemSelected.subscribe(onNext: { [weak self] row, component in 
    guard let s = self else { return } 
    s.label.text = s.pickerDataSource[component][row] 
}).addDisposableTo(disposeBag)