こんにちは。
皆さん、テーブルビューに表示するデータをどのように扱っていますか?? 最近、僕はデータを扱うオブジェクトを別に作り、それにデータの管理を任せ、テーブルビューはそのモデルに応じて、いろんなセルを表示するというやり方をしています。
簡単な説明
- DataStore - SectionData - RowData
こんな形の構造のクラスを作って、DataStoreが命令に応じて好きなようにSectionDataとRowDataを作ります。DataStoreはそのデータをキャッシュしてもよいし、追加したり削除したり、保存しても良いです。そういうのは全部DataStoreがやります。SectionDataとRowDataはCellに表示するためのTitleやらCellの種類やらの情報を持っていて、cellForRowAtIndexPath:
のところで呼び出されたときに、ViewControllerはその情報にしたがって適当なTableViewCellを作ってTableViewに渡します。
sample
UITableViewでのデータの扱い方についての僕のやり方を説明した簡単なサンプルを作りました。迷っている方は是非、参考にしてみてください。あと、もっと良い方法があると思うので、もし、「まぁ、教えてあげてもいいかな」と一瞬でも思われた方がいたら教えてください。あと、お叱りお待ちしてます。
よろしくお願いいたします。
- Github: morizotter/TableViewAndData