我正在構建基於單個視圖控制器的簡單日曆應用程序。視圖控制器具有層次結構,如下:這是代表團的正確「佈局」嗎?
- CDViewController
- CalendarView
- 使用EventView
- AgendaView
- TPKeyboardAvoidingTableView
- EventInfoCell
我的問題具體涉及我的AgendaView中的EventInfoCell。 Cell根據需要顯示的信息有多種佈局textFields和textViews的方法。這些文本字段和文本視圖是基於tableview的編輯狀態和編輯/刪除核心數據對象來啓用/可編輯的。當其中的字符串發生變化時,單元需要提醒managedObjectContext以保存或刪除對象,更新填充其tableView的議程視圖內的模型,並更新與日曆的所有事件相關的模型。我當前的配置使得viewController成爲EventInfoCell的委託,但是這使得agendaView模型的更新複雜化。將EventInfoCell委託設置爲AgendaView,在信息發生變化時告訴它,然後讓AgendaView將它傳遞給它的委託(viewController),但是如果它更符合MVC,而不是完全繞過議程視圖,這似乎適得其反。 ,我會很樂意實施它。我試圖弄清楚什麼是更好的設計模式,任何輸入都不勝感激。