ほとんどのViewControllerにはtableviewがあり、データソースが大きすぎます。 viewModelにもセルに必要なモデルがあるため、データソースをviewModelに移動できますか?tableviewのデータソースをviewModelにバインドできますか?
1
A
答えて
1
わかりましたかわかりません。あなたは、ViewControllerとは異なるクラスにtableViewのdataSourceを設定したいのですか?
これは可能です。まず、クラスがUITableViewDataSourceプロトコルに準拠していることを確認します。このようにいろいろ書い:
// In Swift
class MyView: UIView, UITableViewDataSource {
}
// In Objective C, in myview.h
@interface MyView: UIView <UITableViewDataSource>
その後、あなたはあなたのビューコントローラがMYVIEWのインスタンスに明示的にあなたのtableViewのデータソースを設定して初期化するいくつかの点で。何かのように
// In Swift
let myView = MyView()
override func viewDidLoad() {
tableView.dataSource = myView
}
// In Objective C
@interface ViewController()
@property (strong, nonatomic) MyView *myView;
@end
@implementation ViewController
- (void)viewDidLoad() {
myView = [[MyView alloc] init];
tableView.dataSource = myView;
}
@end
+0
ほとんどのtableViewのdataSourceにはModelが必要です。モデルにMyViewを割り当てる必要がありますか? – GodCard
+0
@GodCard、そうです。自分のコード例でMyViewを空のままにしましたが、そのプロパティとアウトレットを追加し、DataSourceとDelegateプロトコルメソッドを実装する必要があります。 –
関連する問題
- 1. プロパティグリッドをデータソースにバインドできますか?
- 2. WPFでは、ViewModelにバインドして、さまざまなXAML要素をViewModelのメソッドにバインドできますか?
- 3. ViewをViewModelにバインドできません
- 4. TableViewのカスタムセル:データソースからセルを取得できません
- 5. 複数のサーブレットを同じデータソース(JNDI)にバインドできますか?
- 6. ViewModelでMvxDialogFragmentをバインドする
- 7. GridViewComboBoxColumnをPage_Loadのデータソースにバインドします。
- 8. ViewModelにイベントをバインドします。
- 9. CheckListBoxをViewModelにバインドします。
- 10. DataGridViewでデータソースをバインドする
- 11. 私は私のビュークラスでのtableViewを書き、それがデータソース
- 12. NativescriptでViewModel mathodにitemTapをバインドする
- 13. ViewModelプロパティをSilverlightでバインドできるようにする
- 14. バインドDropDownListのSQLデータソースから
- 15. DataGrid MultiDataTriggerはViewModelプロパティにバインドします
- 16. ViewModelを複数のウィンドウにバインドする
- 17. Viewmodelにバインドされたファイルアップロード
- 18. XAMLバインドBitmapImage ViewModelプロパティ
- 19. WPF ComboBoxをViewModelにバインドする
- 20. ViewModelコマンドをWPF DataGridにバインドする
- 21. WPFアプリケーションコマンドをViewModelにバインドするICommand
- 22. ViewController(ReactiveCocoa)にViewModelをバインドするiOS
- 23. ネストされたListViewのデータソースを親のListViewデータソースにバインドします。
- 24. Telerik RadTreeがXMLデータソースにバインド
- 25. Qt TableViewへのモデルのバインド
- 26. デザインビューでデータソースにコントロールをバインドし、コードでバインドするのに違いはありますか?
- 27. MvvmCrossバインドViewmodelプロパティからプロパティーを表示
- 28. データソースをレポートビューアテーブルにバインドする方法
- 29. XMLデータソースにHTML属性をバインドする
- 30. データテンプレート内からviewmodelへのバインド
はいそれを分割することができます。あなたは、あなたのデータソースまたはデリゲートとして作り、モデル化することができます。 – Sabby