ReactiveCocoaLayout是基于ReactiveCocoa的框架,它以被动方式描述Cocoa和CocoaTouch布局。
目前,该框架尚处于开发阶段,应视为Alpha质量。在此期间,经常可能会发生重大变化。
优势:显式和线性布局。反应式布局以线性方式进行,因此更易于理解和调试其所采取的步骤。自上而下的布局。除非前者的尺寸或框架明确地包含在后者的布局链中,否则视图的布局不会与其父视图的布局发生交互,从而创建一个单向关系,从而导致更好的封装(没有全局优先级!)并降低了复杂性。双向关系仍然可能,但是必须明确。运行时的条件布局。RCL建立在ReactiveCocoa的全部功能之上,并且可以组成信号来动态禁用和重新启用整个布局链(例如,当您要隐藏和显示视图时),而无需实际对其进行修改。隐式动画。要设置视图框架的动画效果,只需在信号链中添加一个动画方法即可。无需在任何地方显式动画化常量。增量使用。RCL可以在视图内部使用,而不会泄漏任何实现细节。使用“自动版式”或“支柱”和“弹簧”的调用者可以合并反应式视图,而无需了解或关注他们如何在内部执行版式。仅使用RCL不会导致UI范围内的运行速度减慢或行为改变!可扩展性。RCL由许多独立的功能组成,这些功能统一到一个框架中。如果您希望它的行为有所不同,很容易用您自己的功能对其进行扩展。不是黑匣子。与AppKit和UIKit不同,RCL是一个开源项目,因此您可以破解任何特定的位并查看其行为的方式。
评论