2013-04-25 8 views
23

これでfull support for KVOがありましたが、その誰かがRACSignalをdataSourceとする変更可能なテーブルビューを作成しましたか?理想的には、構成を必要としないもの。誰かがRACSignalに基づいて自己更新可能なテーブルビューを更新しましたか?

RACSignal *commentsSignal; 
UITableView *table = [UITableView new]; 
table.dataSourceSignal = commentsSignal; 
[self.view addSubview:table]; 
// No more basic config 
+1

テーブルビューのコンテンツは単なるオブジェクトの集まりではありませんが、さらに多くのものがあります:高さ、セクション、タイトル、カスタムセル、など...テーブルビューを完全に構成するにはもっと多くのことが必要です。 – Tricertops

+0

あなたは、再読み込み、挿入、削除、およびセルの移動のみを要求していますが、これは私が通常やっていることですが、再び:すべてのテーブルがとても異なっています。 – Tricertops

+0

申し訳ありませんが、この質問はデータとコレクションのオブザーバーに関するものであり、外観に関するものではありません。 ReactiveCocoa、Nimbusなどの[CueTableReloader](https://github.com/Cue/CueTableReloader)を使用すると、モデルのコレクションを変更したときに自動的に並べ替えるテーブルビューを約4行のコードで作成できます。 – Michael

答えて

2

ReactiveCocoa 3.0(現在開発中)は、それを行うカテゴリをUITableViewに追加しています。

私は数週間でそれを更新していないが、私はそれのために早期podspec作ら

https://gist.github.com/adlai-holler/ae321c3398d7db9a55c0

+2

これ以上見つけることができません –

2

はい、私は信号にテーブルビューをバインド「バインディングヘルパー」を作成しました:

http://www.scottlogic.com/blog/2014/05/11/reactivecocoa-tableview-binding.html

あなたは、以下に示すように、セルは、ペン先に定義されているテーブルビューに信号を結合するために使用することができ

// create a cell template 
UINib *nib = [UINib nibWithNibName:@"CETweetTableViewCell" bundle:nil]; 

// bind the ViewModels 'searchResults' property to a table view 
[CETableViewBindingHelper bindingHelperForTableView:self.searchResultsTable 
         sourceSignal:RACObserve(self.viewModel, searchResults) 
         templateCell:nib]; 

上記の例では、テーブルビューはRACObserve(self.viewModel, searchResults)経由でビューモデルのNSArrayプロパティにバインドされていますが、配列を出力するRACSignalはすべて正常にバインドされます。

+0

私は変更可能なデータを完全にサポートするものを探していたので、私はあなたの答えをupvotedしていません。彼が話しているカテゴリーを見つけることができず、RC 3.0がまだリリースされていないので、私はホラーの答えも拒否しました。 – Michael

+0

問題はありません - あなたは、 "完全に可変データをサポートする"ものを探していると言います。私はあなたが少しそれを拡張することができますか?どのようなシナリオをサポートしたいですか? – ColinE

+0

ソース配列を追加したり削除したりすると、適切な表セルアニメーションが発生するはずです。混合一括追加/削除は、テーブル上で 'beginUpdates'と' endUpdates'を呼び出すべきです。 – Michael

関連する問題