単一のビュー コントローラーに基づく単純なカレンダー アプリケーションを構築しています。ビュー コントローラーには、次のような階層があります。
- CDViewController
- カレンダービュー
- イベントビュー
- 議題ビュー
- TPKeyboardAvoidingTableView
- イベント情報セル
私の質問は、特に AgendaView 内の EventInfoCell に関するものです。Cell には、表示する必要がある情報に応じて、textFields と textViews をレイアウトするさまざまな方法があります。これらのテキストフィールドとテキストビューは、テーブルビューの編集ステータスに基づいて有効化/編集可能になり、コア データ オブジェクトを編集/削除します。これらの文字列が変更されると、セルは managedObjectContext に警告して、オブジェクトを保存または削除し、その tableView を設定するアジェンダビュー内のモデルを更新し、カレンダーのすべてのイベントに関連するモデルを更新する必要があります。私の現在の構成では、viewController が EventInfoCell のデリゲートになりますが、これにより、agencyView モデルの更新が複雑になります。EventInfoCell デリゲートを AgendaView に設定し、情報が変更されたときに通知するのは、ほとんど逆効果のようです。次に、AgendaView にそのデリゲート (viewController) に単語を渡させますが、agendaView を完全にバイパスするよりも MVC に準拠している場合は、喜んで実装します。私はより良いデザインパターンは何かを理解しようとしています.どんな意見でも大歓迎です.