2017-03-29 9 views
0

RxSwiftでは、なぜこのテーブルビューで値が得られないのか分かりますか?
注:allTableはのUITableView変数からUITableへのRxSwiftのバインド

ある
var strList: Variable<[String]>? 

    let disposeBag: DisposeBag = DisposeBag() 

    strList?.value.append("111") 
    strList?.value.append("222") 
    strList?.value.append("333") 

    strList?.asObservable() 
     .bindTo(
      allTable.rx.items(cellIdentifier: "Cell", cellType: UITableViewCell.self) 
     ){ (row, item, cell) in 
      cell.textLabel?.text = item 
     } 
     .addDisposableTo(disposeBag) 
+0

'strList'の初期化を追加できますか?つまり、strListは 'nil'であり、疑問符の後のすべてのコードはこのためにスキップされます。 – tomahh

+0

RxSwift変数を初期化するにはどうすればよいですか? –

+1

'let strList = Variable([" abc "、" dce "])' – tomahh

答えて

1

あなたは、関数が終了するが、サブスクリプションが破棄されたときに、それ以外の機能

let disposeBag: DisposeBag = DisposeBag() 

var strList: Variable<[String]>? 

func subscribeToStrList() { 
    strList?.value.append("111") 
    strList?.value.append("222") 
    strList?.value.append("333") 

    strList?.asObservable() 
     .bindTo(
      allTable.rx.items(cellIdentifier: "Cell", cellType: UITableViewCell.self) 
     ){ (row, item, cell) in 
      cell.textLabel?.text = item 
     } 
     .addDisposableTo(disposeBag) 
} 

disposeBag外の作成を移動する必要があります。

+0

それはよく見つかった!ありがとう。 –

関連する問題