简介: 一个功能复杂的界面,即便将控件和工具类进行封装,视图控制器依旧达到了近2000行代码
层级划分
-
视图层
-
控制视图层
NavigationBar
ToolBar
KeyboardView
-
显示视图层
ScoreView
ReadyPlayView
-
功能控件层
mainDisplayLink
coolDownDisplayLink
metronomeTimer
player
metronomePlayer
coolDownPlayer
-
数据层
- 弹奏配置类数据
- 弹奏记录类数据
- 弹奏数据处理方法
设计思路
-
ZYFiPianoViewController
拥有ZYFiPianoControlView
ZYFiPianoPlayModel
-
ZYFiPianoViewController
包含ZYFiPianoControlView
ZYFiPianoPlayModel
的公共参数 -
ZYFiPianoControlView
拥有各类视图控件以及功能控件 -
ZYFiPianoControlView
提供视图更新外部接口 -
ZYFiPianoControlViewDatasource
为ZYFiPianoControlView
提供最新的数据源 -
ZYFiPianoControlViewDelegate
将各类控制事件传递给ZYFiPianoViewController
-
ZYFiPianoPlayModel
响应控制事件,更新配置数据以及处理数据 -
ZYFiPianoControlView
根据ZYFiPianoPlayModel
更新视图