iOS设计模式解析(四)组合模式

时间:2024-01-10 23:08:08
  • 组合模式:将对象组合成树形结构以表示"部分-整体"的层次结构。组合是的用户对单个对象和组合对象的使用具有一致  
  • Cocoa Touch中组合模式使用:Cocoa Touch框架中,UIView被组织成一个组合结构。每个UIView的实例可以包含UIView的其他实例,形成同一结构。  iOS设计模式解析(四)组合模式
    •   视图组合结构参与绘图时间处理,当请求超视图为显示进行渲染时,消息会先在超视图被处理,然后传递给子视图。消息回传到整个树。
    •   例如绘制View5,绘制时间由View传递给View1、View2,然后发现不不能处理继续向下传递,View3亦不能处理传给View5、View4发现View5(传递链)
  • 延伸总结:

    •   hit-testing:点击View5。那么由上层向下传递确定是否在边界且位于Lowest层。这样就找到了View5。
    •   响应连:如果View5不能响应点击事件,那么这个事件会按照由下向上传递这个事件,直到可以被响应。如果传到了根节点(Application)也不能被响应那么会报错Crash