我对Apple 的 MVC 模式的输入处理有点困惑. 根据 Apple 的说法,您的对象应分为模型对象(处理数据)、视图对象(显示内容)和控制器(绑定两者并处理事件和输入)。然而,Apple 的许多原生 UIKit 视图(UIScrollView、UIControl 对象等)自己完成所有输入处理,可能通过委托和数据源让它们的控制器知道它。这真的让我很困惑。在我看来,MVC 三元组的坚固性取决于模型和视图都相当愚蠢(因此很容易交换)。当所有操作系统级别的事件复杂性都集中在控制器中时,您就可以很好地分离关注点。另一方面,向视图添加输入处理似乎会将其变成一种自己的控制器。
我在这里错过了什么吗?思考这个问题的正确方法是什么?